当前位置: 首页 > Web前端 > CSS

如何愉快的写CSS??

时间:2023-03-30 22:18:35 CSS

.b{颜色:#999;}随着前端的飞速发展,尤其是JS语言模块化已经成为标准,ES678迅速普及,前端工程化越来越成熟,但是CSS远远落后,CSS还在在探索的过程中,诞生于LESS,SASS预处理语言。开发人员一直在寻找CSS工程的最佳实践。在写CSS的时候,很难说出几个崩溃的瞬间:命名这个应该是老生常谈的问题,在每种语言中都存在;为了不重复,会有各种稀奇古怪的名字。在这里推荐一个网站,codelf选择器可能有点全局污染:换一个风格会影响很多地方。样式难以复用:需要写很多重复的代码,不像js函数可以复用,我们不是代码生成器,而是代码搬运工。强制!重要,有种想吊死最后一个写代码的人的冲动

上面的你要怎么样structure写css1.俄罗斯套娃,这个可以解决全球污染问题,只需要修改topparent的名字就可以开始新一波的套娃了。但是这样写的代码容易被骂,代码冗余,可读性差。box-container{color:#000;}.box-container.boxs{color:orange;}.box-container.boxs.box-item{color:yellow;}.box.boxs.box-item.item{color:green;}2.下面的代码很清晰,解决了冗余的问题,但是随着项目越来越大,命名是个问题,所以有很多奇怪的名字什么是预处理,老的不用说了,驱动的话,可以看看->传送门,这里有一些最流行的CSS预处理器:Sass,LESS,tylus,PostCSS预处理器增强CSS的语法。让标准CSS具备以下能力变量混合(Mixin)扩展嵌套规则计算功能Namespaces&Accessors(命名空间和访问器)作用域以上流行的预处理器就不一一介绍了,官方的后处理器很详细的介绍了它处理的对象with是标准的CSS,兼容性优化等操作不需要开发关注;最终的代码是以css代码为代表的插件,具有体积小、CSS3前缀等特点。CSS3属性前缀各个浏览器的CSSModules只是解决了编写代码时代码复用和手动嵌套的问题,并没有真正解决全局污染的问题说到CSS模块化,不得不提几个概念CSSInJSscope,你可以自学。我觉得CSSModules很简单,可以解决问题/*Button.css*/.primary{background-color:#1aad19;颜色:#fff;边框:无;border-radius:5px;}//Button.jsimportstylesfrom'./Button.css';console.log(styles);//->{primary:"yTXmm0isaXExoYiZUvKxH"}constButton=document.createElement('div')Button.innerHTML=`提交`导出默认按钮//索引.jsimportButtonfrom'./components/Button'constapp=document.getElementById('root')appHTML由.appendChild(Button)
生成提交
当然需要webpack打包工具和各种loader、插件。就VUE而言,官方传输可以直接打开。.b{颜色:#999;}//焦点,焦点,焦点,焦点,焦点.abc{color:#000;.b{颜色:#888;}}