第37章 固定搭配速查
3 分钟阅读
第三十七章:固定搭配速查
这些固定搭配收藏起来,编码效率翻倍!
37.1 文字类
37.1.1 单行省略
一行放不下时用"…“收尾。四个属性缺一不可:white-space: nowrap 不让换行、overflow: hidden 把超出部分裁掉、text-overflow: ellipsis 画省略号,而元素本身必须有一个"确定"的宽度(width/max-width),否则它会被内容撑开,永远不触发省略。
| |
37.1.2 多行省略
限制最多显示几行,超出部分显示省略号。经典写法依赖 -webkit-box 这一套老私有属性,兼容性好但目前属"事实标准”;新的 line-clamp 标准写法正在普及(display: block + line-clamp),可以两个都写、让新浏览器优先。
| |
⚠️ 注意:
-webkit-line-clamp一旦生效,元素就变成"按行截断的盒子",此时不要再给它加height,否则会和行高打架。
37.2 布局类
37.2.1 Flex居中
让子元素在容器里水平+垂直双向居中,是现代 CSS 里最短的居中方案。justify-content 管主轴、align-items 管交叉轴;只要容器本身有高度(或是个 flex 容器且父级给了高度),就能居中。
| |
37.2.2 清除浮动
浮动元素会脱离常规流,导致父容器"高度塌陷"。三种清除方式按现代推荐度排序如下:
| |
💡 怎么选:新项目直接用
display: flow-root——它专门为"建立 BFC、包住浮动子元素"而生,副作用最小;老项目里大量存在的.clearfix伪元素写法继续用也没问题;overflow: hidden能生效,但会顺手把溢出的内容(比如下拉菜单、阴影)裁掉,属于下策。
37.3 动画类
37.3.1 悬浮放大
鼠标移上去时把卡片稍微放大一点点,是提升"可点击感"的经典手法。transition 放在常态规则里,transform 放在 :hover 里,这样移入移出都有平滑过渡。
| |
⚠️ 别用
width/height做放大:那会触发整个页面重新布局(reflow),而transform只做合成层变换,性能好得多。
37.4 表单类
37.4.1 accent-color
一行代码就能把复选框、单选框、进度条等"原生控件"的主题色换成品牌色,不需要再写自定义组件。
| |
💡 适用范围:目前对
checkbox、radio、range、progress生效;<select>、<button>不一定买账,还是要靠自定义样式。
本章小结
收藏备用!
下章预告
下一章常见问题与坑!