有一个很好的替代方法,称为NCSS。
命名级联样式表是语义CSS的命名约定和准则。
为什么:
在与不同类型的开发人员一起进行项目时,大型CSS曾经是一场噩梦。缺乏惯例和指导方针将导致无法维持的泥潭。
目标:
CSS的可预测语法,提供有关HTML模板的语义信息。
- 哪些标签,组件和部分受到影响
- 一类与另一类的关系是什么
类:
命名级联样式表分为:
- 命名空间
- 结构类
- 组件类别
- 类型类别
- 修饰符类
- 功能类别
- 例外情况
进一步阅读:https : //ncss.io/documentation/classes
例子:
<header id="header" class="foo-header">
<h1 class="foo-title-header">Website</h1>
</header>
<main class="foo-main foo-wrapper">
<article id="content" class="foo-content">
<h2 class="foo-title-content">Headline</h2>
<div class="foo-box-content">Box</div>
</article>
<aside id="sidebar" class="foo-sidebar">
<h3 class="foo-title-sidebar">Headline</h3>
<p class="foo-text-sidebar">Text</p>
</aside>
</main>
<footer id="footer" class="foo-footer">
<div class="foo-box-footer">Powered by NCSS</div>
</footer>
进一步阅读:https : //ncss.io/documentation/examples
工具:
安装:
npm install ncss-linter
验证HTML字符串:
bin/ncss-linter --html='<div class="box-content"></div>'
验证本地路径:
bin/ncss-linter --path=templates*.html --namespace=foo
验证远程URL:
bin/ncss-linter --url=https:
进一步阅读:https : //ncss.io/documentation/tools