bem(块元素模型)是前端开发方法,命名约定和一组相关的工具。它起源于Yandex,旨在大型团队的高效开发。这种解释重点介绍了核心概念和命名系统。
>bem将查看网站作为可重复使用的组件块的集合,可组合构建接口。 块是一个网站部分(标题,页脚,侧边栏等),如图2.3所示。 请注意,这里的“块”是指HTML页面段。
>>块可以筑巢。例如,标头块可能包含徽标,导航和搜索表单块(图2.4)。 页脚可以包含一个站点地图块。
图2.5。带有文本输入并提交按钮元素的搜索块。
>
>一个主内容块可能包含一个文章列表块,该列表又包含文章促销块。每个促销块都可以具有图像,摘录和“阅读更多”元素(图2.6)。
框架和元素构成了BEM命名约定的核心:
>块变体(例如,一个深色搜索框)使用类名称中的修饰符。
一个深为主题的版本:__
--
<div class="search"> <div class="search__wrapper"> <label for="s" class="search__label">Search for:</label> <input type="text" id="s" class="search__input" /> <input type="submit" class="search__submit" value="Search" /> </div> </div>
>和search--inverse
search__label--inverse
是> 类,而不是替换。 仅使用类选择器;允许儿童和后代选择器,但也应针对类。避免元素和ID选择器。这使选择器特异性保持较低,防止副作用,并使CSS独立于标记模式。 唯一的块和元素名称可以防止命名冲突。 好处包括:
> BEM的范围超出了此概述。 BEM官方网站提供了全面的详细信息,工具和教程。 “ Get Bem”是命名惯例的另一个绝佳资源。
>>(省略了常见问题部分,因为它是已经存在的信息的重复,并且会大大增加输出的长度而不添加新内容。
以上是CSS体系结构块元素模型(BEM) - 站点点的详细内容。更多信息请关注PHP中文网其他相关文章!