第一章:被遗忘的宝石——重新认识Outline
在CSS的万花筒中,border(边框)无疑是聚光灯下的明星,它负责定义元素的边界,是构建布局和视觉分隔的基石。而它的“孪生兄弟”——outline(轮廓),却常常被开发者们丢在角落,只在写outline: none;时才想起它。
但今天,我们要为outline正名!它绝非border的简陋模仿者,而是一个拥有独特技能、在特定场景下无可替代的“瑞士军刀”。理解并善用outline,是你从CSS新手迈向精通的标志性一步。
它的核心人设:不占空间的“灵魂画手”
与border最根本的区别在于:outline不参与盒模型的计算。这意味着:
- 你给一个元素添加
outline,不会导致它的width和height发生变化。 - 它不会挤开周围的元素,不会引发令人头疼的布局抖动(Layout Shift)。
- 它就像是一个漂浮在元素上方(或下方,取决于
outline-offset)的“光影”,只负责描绘,绝不占地。
这个特性让它在调试和增强交互时变得无比优雅。
第二章:解剖Outline——属性全解析
outline是一个简写属性,是以下三个属性的集合:
outline-width: 设定轮廓的宽度。值和border-width一样,可以是thin,medium,thick,或者具体的长度值(如2px)。outline-style: 设定轮廓的样式。这是必须提供的,否则轮廓不会显示。值和border-style类似,如:none,hidden,dotted,dashed,solid,double,groove,ridge,inset,outset。outline-color: 设定轮廓的颜色。可以是任何有效的颜色值(关键词、十六进制、RGB、HS

最低0.47元/天 解锁文章
883

被折叠的 条评论
为什么被折叠?



