首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

【CSS】253- 从原型图到成品:步步深入 CSS 布局

如果你惯用策略就是按部就班地组合布局 —— 先把 A 元素放在这儿,好了,A 元素就位了,再看怎么 B 放在那儿 …… 那你没有挫败感才怪。...article、div、li、ul 以及 p 标签都是块级元素。 注意,在上面的例子中,为什么即使 img 标签是行内元素,头像图片依然独占一行?因为下方 div 是块级元素。...下面咱们第一段 CSS 代码,我们会把放在 HTML 文档中 head 标签 style 里: .tweet { display: flex; } 干得漂亮!...我们还要把变成一个 Flex 容器,这样里面的按钮就能排成一行了(用 flex-direction: row)。...一种就是设置 Flex 子项对齐方式。你应该对设置对齐方式很熟悉,每个富文本编辑器顶部都有这种功能按钮: ? 它们文本进行左对齐、居中对齐、右对齐以及 “两端对齐”,也就是铺满整行。

4.4K51
您找到你想要的搜索结果了吗?
是的
没有找到

用过 tailwindcss 知道,命名真的是顶级痛点

都火成这样了,也没把放在心上,因为这个技术方案就是有着很明显痛点。你一看这代码一长串 class 名,就感觉很糟心。...这些容器组件你一看就知道他要支持什么布局,例如 Flex() Stack() Row() Clomn() Tab() 所以,这种直接以容器属性来主导布局风格就跟传统 css 不一样。...div> 写好之后回过头去重新分析布局特性是什么,应该用什么样属性来约束。...这个时候,其实布局思维已经被拆解成了两个步骤。 然后紧跟着大问题就来了,这个父级容器应该叫个什么名字?...不过这对于喜欢定制自己 UI 道友们而言,应该会很喜欢。因为总能时不时遇到有人在群里问如何修改 antd 样式。如果能够比较自由定制自己样式,或者小幅度调整组件样式,应该会很爽。

11810

【微信小程序】welcome页面

一个小程序项目必须有这3个描述App文件,它们必须放在应用程序根目录下,否则小程序会提示找不到app.json文件。...wxml文件类似于我们熟悉HTML文件,用来编写页面的标签和骨架,不同是wxml文件里标签元素不可以使用HTML标签,只能使用小程序自己封装一些组件,这些组件也是我们后面要重点学习知识。...wxss文件作用类似于我们熟悉CSS文件,用于编写小程序样式,实际上小程序样式编写语言就是CSS,只是.css文件换成了.wxss文件。 json文件用来配置页面的样式与行为。...image组件用来显示一张图片,类似于html中img标签, 需要设置一个src属性,该属性指向一张图片路径,用来显示该图片。...代码如下: /* 所有组件元素容器样式 */ .container{ /* flex布局控制容器下子元素排布规则 */ display: flex; flex-direction

84210

学姐叫我看 CSS 新出容器查询,然后公共组件重构成响应式

这样的话,如果我们思路转向组件父组件?换句话说,如果我们查询父组件,并根据父组件宽度或高度来决定组件应该是什么样子?我们来看下容器查询概念。 什么是容器查询 首先,让定义容器。...然后,再告诉浏览器,如果父元素宽度等于或大于500px,应该以不同方式显示。对于700px查询也是如此。这就是CSS容器查询工作原理。...可以这些组件分成以下几个部分 Viewport (媒体查询) Parent (容器查询) 通用:不受影响组件,如按钮、标签、段落。 对于示例UI,下面是我们如何划分组件。...不仅如此,我们还可能有一个组件变体,应该只显示在特定上下文中。例如,事件列表页面。在这种情况下,清楚在何处使用此变体是很重要。 问题是,如何告诉设计师应该哪里使用这些组件。...另外,添加了contain属性。然后,如果容器宽度大于180px,将显示用户名。 另一个类似的用例是侧导航。我们可以切换导航项标签位置,从在新行或旁边图标。

2.2K30

微搭中如何实现弹性布局

但是对于我们这类特殊需求,只用可视化设置显示是满足不了需求。这就要求我们学习一下CSS布局知识,直接通过代码方式来控制展示。...; row-gap: 12px; 我们还需要设置一下对齐方式,我们设置为左对齐 justify-content: flex-start; 这些属性要设置到哪里?...一般是要设置在父容器上。...现在图片组件容器是普通容器,我们切换到样式,点击CSS,粘贴如下样式代码 图片 self { column-gap: 12px; row-gap: 12px; padding-top...如果认为代码只是简单拖拽就可以完成开发,那完全是一种主观判断。还是要实际操作一下你可以体会到什么是代码开发,在哪,代码又在哪里

53030

博客添加暗色主题切换功能,从主题切换聊聊前后端cookies使用

也就是在当天,给自己博客 github 上面提交了一个 issue,也就是需要给博客添加一套暗色主题并支持主题切换。但是人都是有拖延症,这一拖,两个月就过去了,主题切换功能终于上线了。...而切换方式,上面说到是通过 js 定义,这个是前端实现,当然,也可以后端实现,发现 V2EX 好像就是调用了一个接口实现,这个应该属于后端实现了。...css文件加载位置 写过前端的人都应该知道,css 文件一般会放在 head 标签里面,而且文件是之上往下读取,也就是说后面的文件中样式可以覆盖上面的文件样式,这也就是主题切换原因,其实就是样式覆盖...按理来说,做到这一步,整个主题切换工作已经完成了,根本不需要涉及后端操作,那为啥要提到后端 cookies ?...解决办法 js 中判断主题策略方法删除掉,然后判断主题状态事情交给后端来做。

52410

CSS新规范:样式查询

最近,Chrome团队发布了对一个新CSS规范实验性支持,即样式查询。简而言之,让我们查询容器样式,而不是只查询尺寸。在查询容器尺寸不够情况下,这可能很有帮助。...容器查询还不够吗? 这是一个好问题。在容器查询中,我们可以根据一个组件父级宽度来控制样式,这非常有用。不过,在某些情况下,我们可能不需要查询尺寸,而是想查询一个容器计算样式。...,然后在不在 CSS 中创建更多特定性情况下为标题和描述打标签。.... */ } } 在这种情况下,样式查询有用之处在于,将上述样式放在 CSS 中一个地方是有意义。...很简单,我们需要一种方法来告诉组件,如果你住在这个容器内,卡片样式应该被填充。

91030

CSS_Flex 那些鲜为人知内幕

其实,对于CSS来讲,大家都抱着一种「死记硬背」东西来对待。久而久之,就会出现上述问题,一个属性或者一个使用案例,需要去指定网站去查询。...这算是好,有些同学没有自己知识体系或者收藏资料。 每次遇到问题,都是baidu/google一下,然后CV大发一通。 其实,我们应该将 CSS 视为一组布局模式。...为什么它们不共享相同选项?我们将很快揭开这个谜团,但首先,需要分享另一个对齐属性:align-self。...「根本原因是flex-shrink 默认值是 1」,我们在示例中设置了该属性,按道理输入框应该能够缩小到需要程度!但是却事与愿违。...在 Flexbox 中,自动边距变得更加有趣: >> 「自动边距将吞噬额外空间,并将其应用于元素边距」。使我们能够精确控制在哪里分配额外空间。

21110

详解瀑布流布局5种实现及oject-fit属性,附源码

scale-down:会在 none 或 contain 中选择一个,原则是:当容器小时,表现和 contain 一样;当图片小时,表现和 none 一样。即谁小选择谁。...到这里不知道有没有小伙伴和我一样,在看到图片不同表现时,特意去浏览器查看了下 真实尺寸,发现依然是 width: 100%;height: 100%;是充满整个容器。...但为什么内容显示却有不同效果,这让产生了疑惑。本着发现探索精神,就去寻找答案了。 W3c 是这么描述标签创建是被引用图像占位空间。...不不不,这才是刚刚开始,精彩还在后面。后面的布局更加精彩。 多图片布局 上面一直在说都单张图片显示。只要我们图片用合适方式放进容器即可。如果是图片列表?...但是认为瀑布流布局也是我们应该掌握内容之一,即便此时用不到,也可以先把文章收藏起来,以备不时之需,文中采用了多种方式实现,你可以选择一种最贴合你需求方式。

1.2K20

碰到那些面试题html+css

flex容器,但是每个子元素两边是子元素间距一半 align-content flex-start flex子元素在最上边 flex-end flex子元素在最下边 center flex子元素在纵向正中间...space-between 纵向平分flex容器 space-around 纵向平分flex容器,但是每个子元素两边是子元素间距一半 stretch 默认:li将ul划分 align-items flex-start...5,浏览器兼容问题五:图片默认有间距 问题症状:几个img标签放在一起时候,有些浏览器会有默认间距,通配符清除间距也不起作用。...碰到几率:20% 解决方案:使用float属性为img布局 备注:因为img标签是行内属性标签,所以只要不超出容器宽度,img标签都会排在一行里,但是部分浏览器img标签之间会有个间距。...使用hacker可以浏览器分为3类:IE6 ;IE7和遨游;其他(IE8 chrome ff safari opera等) ◆IE6认识hacker 是下划线_ 和星号 * ◆IE7 遨游认识hacker

1.2K20

为什么我们不擅长 CSS

最终,他们事情搞得过于复杂,导致 CSS 极难维护。...那么,答案是什么? 我们希望我们风格足够通用,可以在不同语境中重复使用,但又不会太通用,以至于我们不得不在这些语境中不断重复自己风格。... 当然,我们可能还想使用其他灵活属性,但我坚信需要时添加,而不是试图考虑所有可能使用情况。就这张卡而言,这已经足够了。...我们可以使用 width >= 图像 当设计师在大屏幕和小屏幕之间采用完全不同设计时,有点抓狂。我会尽我所能让发挥作用。 在这里,我们图像会从一个小圆圈变成大屏幕上全尺寸图像。...因此,我们 --width 属性实际上是设置了最大宽度,而宽度和高度都设置为自动,由图片宽高比来决定。为了补偿这一点,在文本容器中内联添加了一个 align-self: center。

16810

Web 用户体验设计提升实践

1.4.2 object-fit 限制高宽也可能会出现问题,比如图片被拉伸了,非常难看: [ ] 这个时候我们可以借助 object-fit,它能够指定可替换元素内容(也就是图片)该如何适应容器高宽...正好, 标签提供了相应属性 srcset 供我们操作。...接下来还需要考虑,当图片链接挂了,应该如何处理。 处理方式有很多种。最好处理方式,是在张鑫旭老师《图片加载失败后 CSS 样式处理最佳实践》这篇文章中看到。...那么,我们页面如何尽可能做到高可用性? 2.2.1 使用习惯用法 使用习惯用法。当我们设计一个新页面时,页面位置、功能设置、视觉元素应当和惯常用法相差无几,这样才能让用户有舒适感。...: all 可以很好地解决这个痛点: [ ] 别看只是减少一次点击鼠标的次数,但正是这些细节累积,能让用户感受到开发者用心。

1.2K20

图片布局最全实现方式都在这了!附源码

scale-down:会在 none 或 contain 中选择一个,原则是:当容器小时,表现和 contain 一样;当图片小时,表现和 none 一样。即谁小选择谁。...到这里不知道有没有小伙伴和我一样,在看到图片不同表现时,特意去浏览器查看了下 真实尺寸,发现依然是 width: 100%;height: 100%; 是充满整个容器。...但为什么内容显示却有不同效果,这让产生了疑惑。本着发现探索精神,就去寻找答案了。 W3c 是这么描述: 标签创建是被引用图像占位空间。...不不不,这才是刚刚开始,精彩还在后面。后面的布局更加精彩。 多图片布局 上面一直在说都单张图片显示。只要我们图片用合适方式放进容器即可。如果是图片列表?...但是认为瀑布流布局也是我们应该掌握内容之一,即便此时用不到,也可以先把文章收藏起来,以备不时之需,文中采用了多种方式实现,你可以选择一种最贴合你需求方式。

1.3K30

flex space-between最后一行对齐问题解决方案

背景 常见一个图文列表设计,通常是这样,两端顶着容器,中间间距平均分,如下图某东商品列表设计: ? 列表是这样自适应,当视窗足够放多少个商品就放多少个,然后各个商品项目之间间距平均分。...我们看到效果,最后一行不正确,应该向左对齐对,详细比较过多种方案,个人觉得还是增加空白项这种方案最佳,就是往后面多加几个空白项,你至少要放入 最大屏能显示个数减去1个就行了,当然放得更多也是显示正常...如果说外框容器是定死比如1000px,那么每行项目数目也是固定,那可能还稍微好一些。...我们接着想,还不如直接用以前display: inline-block 或者 float:left去实现,但是其实本质上跟 flex-start还是一样做法。...因此觉得就只有放空项目方案是最佳了,维护起来也方便。比如未来项目宽度优200px改成了100px,我们直接200改成100再检查一下空项目是否放足够。

3K20

CSS通用类和“结构与样式分离”

写码过程大致如下: 根据设计稿需要标签写好(这里拿一个作者简介卡作为例子): <img src="http://p0.qhimg.com/t01e2c15da7b6fa9aba.jpg...标签看上去仍然很“语义化”且与样式分离,而且现在CSS也与标签结构解耦合了。额外好处是避免了不必要选择器嵌套,保持了优先级。 但是很快又陷入了两难境地。...但是说我们确实想使成为一个真正CSS组件,而不是从通用类库里挑出需要类名进行组合。那么我们应该怎么称呼?...我们更倾向于将它组合成小一些组件,就像我们之前讨论过那样。 那么这些小一些组件会是什么? 它可能被放在.card容器里。...你仍然应该创建组件 观点与那些顽固实用派CSS拥护者区别之一就是,不认为你应该仅用通用类来给标签添加样式。

3.3K21

【CSS进阶】伪元素妙用2 - 多列均匀布局及title属性效果

也是知道这个姿势。为了不误导读者,就赶紧补充一下。 伪元素虽然强大,但是还是有一些特定标签是不支持伪元素 before 和 after 。...究其原因,要想要标签支持伪元素,需要这个元素是要可以插入内容,也就是说这个元素要是一个容器。而 input,img,iframe 等元素都不能包含其他元素,所以不能通过伪元素插入内容。...并且这里弹出层样式也可以完全自定义,没有用到 JS 代码,并且查看 HTML 代码可以看到不需要多余标签。 怎么实现?...值,相当于content:"ABC" 而且框体由于是伪类生成,所以我们可以自定义样式及位置,运用这个效果,我们应用在可以在许多无法正常信息展示完地方。...在移动端我们可以使用 flex 布局,但是在 PC 端如果要兼容 IE6+ ,通常都需要一些额外标签控制最后一个元素或者配合 JS 进行运算。

1.2K40

Web 技术:CSS最小和最大(宽度高度)知识点及优缺点

比如说,我们有一个按钮,宽度应该是最小,不应该低于宽度。这就是最大和最小属性变得方便地方。...标签列表 当有一个标签列表时,建议限制一个标签最小宽度,这样如果内容很短,外观就不会受到影响。 ? 通过具有这种灵活性,无论内容有多短,标签都将看起来不错。...但是,如果内容作者输入了一个非常长标签名称,而他使用内容管理系统没有标签最大字符长度,将会发生什么情况? 我们也可以使用max-width。...用红色表示文本应该在父文本中裁剪。因为面板主体是一个flex项目,所以min-height与它内容相等。为了防止这种情况,我们应该重新设置最小高度值。看看HTML和CSS是怎么样。...为图像添加了以下CSS: img { min-width: 35%; max-width: 70%; } ? 事例源码:https://codepen.io/shadeed/pe...

5.5K20
领券