html5教程-AMCSS(CSS属性模式)开发简介

发布时间:2018-12-18 发布网站:脚本宝典
脚本宝典收集整理的这篇文章主要介绍了html5教程-AMCSS(CSS属性模式)开发简介脚本宝典觉得挺不错的,现在分享给大家,也给大家做个参考。
小宝典致力于为广大程序猿(媛)提供高品质的代码服务,请大家多多光顾小站,小宝典在此谢过。
 

html5教程-AMCSS(CSS属性模式)开发简介

一、AMCSS简介

amCSS是Attribute Modules for CSS的缩写,表示借助HTML属性来进行CSS相关开发。

传统我们多个模块特性是通过多个类名进行控制的,典型如下:

<div class="button button-large button-blue">Button</div>

例如,weui中的按钮,或者针对用户侧PC产品的LuLu UI中的按钮,均是采用这种方式。

而AMCSS则是基于属性控制,例如:

<div button="large blue">Button</div>

为了避免属性名称冲突,我们可以加一个统一的前缀,例如am-,于是有:

<div am-button="large blue">Button</div>

此技能够实行离不开这个一个选择器:[attr~=&#8221;val”]。这个选择器多年前在“了不起的IE7浏览器-CSS新特性-实现与思维变革”这篇文章中就有介绍。

[attr~="val"]可以看出是属性值中的单词匹配,CSS选择器这东西是老外弄出来的,老外的的母语是English, English的句子都是一个单词+空格+一个单词实现的,所以弯弯等于(~=)属性选择器的效果就有class类名选择器很近似,基于空格区分。

因此,目前主流类名选择器:

.button {...} .button-large {...} .button-blue {...}

可以转换成:

[am-button] {...} [am-button~="large"] {...} [am-button~="blue"] {...}

AMCSS官网

AMCSS有专门的介绍网站:http://amcss.gIThub.io/

其中,有对AMCSS的优点进行说明:每个属性有效地声明一个单独的命名空间,用于封装样式信息,从而产生更易于阅读和维护的HTML和CSS。

二、我对AMCSS的看法

值得借鉴,但没必要大规模使用,毕竟属性选择器的性能和类名相比差别很大,过度使用可能会产生可感知的性能问题。

但是价值还是很可取的,关键要看使用场景,通常我们静态的组件开发,我建议还是使用类名串联,因为大家都习惯,同事也习惯。但是,有时候,AMCSS这套基于属性选择器开发的思路还是很有用的。

例如,我们经常需要在DOM元素上存储数据,例如放在data-Store属性中,此时,配合AMCSS,我们可以非常高效进行不同数据不同样式的控制。

另外,无障碍访问中的aria-*本质上也都是通过属性控制,现代Web components的UI控制也是基于HTML属性,因此,AMCSS是有生命力有市场的,但是,并不是作为主力出现。

好,短篇一则,感谢阅读,欢迎交流!

参考文章:https://css-tricks.COM/methods-organize-css/

html5教程-AMCSS(CSS属性模式)开发简介

(本篇完)

觉得可用,就经常来吧! 脚本宝典 欢迎评论哦! html5教程,巧夺天工,精雕玉琢。小宝典献丑了!

脚本宝典总结

以上是脚本宝典为你收集整理的html5教程-AMCSS(CSS属性模式)开发简介全部内容,希望文章能够帮你解决html5教程-AMCSS(CSS属性模式)开发简介所遇到的问题。

如果觉得脚本宝典网站内容还不错,欢迎将脚本宝典推荐好友。

本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您有任何意见或建议可联系处理。小编QQ:384754419,请注明来意。