简单了解CSS3的all属性_html/css_WEB
一、兼容性一些CSS文章,或者CSS文档,兼容性什么的都是放在最后。 又不是什么见不得人的事情,来,直接开篇就亮刺刀。 兼容性还行, 除了IE不支持,其他浏览器基本上都绿油油,目前自娱自乐,内网项目什么的都是可以用用的。 二、all是干嘛用的all 属性实际上是所有CSS属性的缩写,表示,所有的CSS属性都怎样怎样,但是,不包括unicode-bidi和direction这两个CSS属性。 为什么会有这个CSS属性呢? 我们可能知道,有些CSS属性值基本上所有CSS属性都有,比方说继承 inherit ! 我们CSS reset输入框的时候,是不是有类似这样的代码(实际可能是具体值,作用类似): input, textarea { color: inherit; font-size: inherit; font-family: inherit;} 因为这类输入控件自身有内置的大小和字体,需要重置。 此时,大家就会发现,这些属性值都是 inherit , 要是可以合并就好了! 哟哟哟,说到点子上了,CSS all 属性就是用来合并的。 input, textarea { all: inherit; } 喔噢,三合一,顿时一阵春风拂面之感。但是,这里仅仅是展示作用,实际上是不会这么用的,因为, all:inherit 会让背景色什么的,都继承父级,相信这不是你希望看到的。 三、语法和区别语法如下: all: initial;all: inherit;all: unset;/* CSS4特性,无视之 */all: revert; 支持三个CSS通用属性值, initial , inherit , unset . 这三个属性值分别表示什么意思呢? 您可以狠狠地点击这里:CSS3 all属性演示demo 默认的HTML和CSS是这样的,一个传统的标签内容,有标题有列表:
article { background-color: #f0f3f9; color: green;}article > textarea { border: 1px solid #34538b; background-color: #ffffe0; color: red;}
这盛世,如你所见: 颜色啊,间距啊,以及文本域状态都是我们认为的样子显示。 现在,点击demo的下拉,选择对应的 all 属性值,实现下面CSS效果: .initial > * { all: initial;}.inherit > * { all: inherit;}.unset > * { all: unset;} 结果:
三、结语动手写文章之前,还以为这个CSS属性会有意想不到的妙用,最后结果是,表现确实意想不到,至于妙用,我只能科科一下。 all 所牵扯的CSS实在是太多了,我目前还是想不出有什么场景,就是要用这个CSS属性。或者说什么时候,希望特殊的元素一下子变成普通元素,例如, input 输入框外面一个 div ,来个 input{all:inherit;} ,貌似还真有这样的场景,输入框不需要 border 不需要 background 不需要 padding 不需要 margin , 恩,不错,不枉写此文了!
本文为原创文章,会经常更新知识点以及修正一些错误,因此转载(图片请勿直接外链)请保留原出处,方便溯源,避免陈旧错误知识的误导,同时有更好的阅读体验。 本文地址: http://www.zhangxinxu.com/wordpress/?p=5321 (本篇完) |