CSS outline:none;是什么意思

html-css07

CSS outline:none;是什么意思,第1张

CSS outline:none表示使outline属性无效,使绘制于元素周围的一条线无效。

outline属性包括:outline-color、outline-style、outline-width:

outline-color :设置元素轮廓的颜色,其取值与border-color类似。只有当outline-style不为none时才有效。默认为transparent。

outline-style :设置元素轮廓的格式,其取值与border-style类似,但没有hidden值。默认为none,无轮廓。

outline-width:设置元素轮廓的宽度,其取值与border-width类似。只有当outline-style不为none时才有效。

因此,CSS设置 outline:none时,outline-color、outline-style、outline-width都会无效,即元素轮廓的颜色、元素轮廓的格式、元素轮廓的宽度都无效,即达到不显示元素轮廓的效果。

扩展资料:

outline的层级顺序:

1、outline在不同的格式化上下文呈现是不一样的,在块级元素里面是可以覆盖上下两边的内容的。在内联元素之可以覆盖上面的内容。

2、通常情况下outline会按照后面覆盖前面的顺序正常显示(同等情况下,如同在文档流里面都没有浮动,或者都是浮动,定位的有z-index不算)

3、如果页面有浮动元素,则先显示浮动元素的outline,再显示正常文档流的outline(浮动元素的outline被没有浮动元素的outline覆盖)

参考资料来源:百度百科-outline

参考资料来源:百度百科-outline-color

参考资料来源:百度百科-outline-style

参考资料来源:百度百科-outline-width

box-shadow:给元素块添加周边阴影效果。

语法:box-shadow: h-shadow v-shadow blur spread color inset

*还有另一种情况: box-shadow: 0 2px 2px #FECC84

当我们在色值前只写了三个数值的情况下,则第三个值是 blur (模糊距离)。

利用阴影属性,也可以实现外边框的效果:

当我们再为它添加一个 outline (轮廓),就会发现它实现了-边框内圆角:

* 关于为什么会这样:

outline的描边并不会跟着圆角走,因此显示为直角。

所以把这两者叠加到一起,box-shadow 则刚好填补描边与容器圆角之间的空隙。

*值得注意的是,box-shadow 阴影的大小值并不一定等于描边的宽度,它和圆角的大小有关系。所以只需要一个足够填补空隙的大小就可以了。事实上,制定一个等于描边宽度的值在某些浏览器中可能会渲染异常,所以,最好是稍小的值。

参考书籍: Lea Verou 《CSS揭秘》