@ postcss和cssmodule是什么?
postcss是什么?
根据官网的解释,它是一种javascript编写的工具,用来转化css的。可以认为它是处理css的插件集合,需要配合诸如webpack、gulp等编译工具才能展现它强大的能力。
目前社区提供了非常多的插件,比较有名的如下:
autoprefixer 可以为css的属性配置兼容性的前缀,不需要手动添加postcss-preset-env 允许你使用更加现代的css特性stylelint 检查css语法错误cssnano css的压缩器等等postcss的原理
如果大家了解babel的原理,那就应该听说过AST即抽象语法树。编译器将字符串进行词法分析、语法分析,再做转换,最终达到预期的结果。postcss也是同样的原理,这个包已经为使用者提供了解析的方法parse,并且也提供了很多转化的API,利用这些就可以自己开发一款postcss插件了。
css Module是什么?
先前呢,大家使用css选择器,它是对整个页面是有效的,也就是全局的,当你每次迭代需求的时候,需要考虑每次添加新的css是否会影响到其他地方,所以大家有时选择为样式表添加命名空间。css Module为大家提供了另外一种开发方式,它可以使css具有局部作用域。
用法如下:
用法是如此的简单,基本一看就会,css-loader为大家提供了css Module的开关,只要为css-loader添加参数选项modules就可以开启。注意:它必须放在less或者sass的loader之前。
那它如何做到局部作用域的呢?
打开element面板可以发现,它把class变成了md5戳,对应每个组件,保持唯一。
vue的scoped
由此大家联想到vue的scoped,它也解决了css局部作用域的问题!
它在dom上生成了一个data属性,并且给class选择器添加了属性选择器,类似于之前的md5戳。不过由于添加了属性选择器,使得选择器的优先级变高了,想在组件外面覆盖css属性就变得不那么容易了!
喜欢偶的回答就关注偶吧,有问题可以发表评论,大家一起学习,共同成长!
@ css选择器中可以匹配所有标签的是?
答案是星星选择标签。
因为星号选择器的定义是用于选择html中的所有标签,在一个页面中大家都会选择去掉html所有标签的默认样式,然后根据自己的需求添加样式,这个时候就需要使用*选择标签。
另外一个*选择标签也可以搭配到其他的标签进行使用,用来选择表示某个父元素下面的所有子元素标签。
@ css设计器怎么用?
1、首先打开DreamweaverCC软件新建一个html文件,在右上角点击CSS设计器,并在下方点击加号,然后选择创建新的CSS文件:
2、在创建窗口中,点击浏览按钮。
3、然后选择站点创建好CSS文件夹,然后输入创建的CSS的名字,点击保存插件文件:
4、然后把添加为设置成链接,点击确定按钮:
5、添加完成后就可以在右侧的站点中的CSS文件夹下看到刚创建好的CSS样式表文件了:
6、此时在html文件中的head标签中,就多了一行链接到CSS文件的代码。在顶部tab标签中也可以看到链接的样式表:
7、接下来在html网页编辑页面,在body标签中输入一个div:
8、然后在顶部tab标签中选择刚才创建的CSS样式表,并在样式表中写一个样式,命名为aaa,并按下快捷键Ctrl+S保存样式表:
9、最后回到html编辑页面,在div标签中引入class,输入刚才写的样式的名称aaa并保存网页:
10、最后点击顶部的设计按钮,就可以看到实时效果了,此时css文件就成功链接进去了: