gpt4 book ai didi

html - 如何在维护语义 HTML 标记的同时使用 Bootstrap?

转载 作者:技术小花猫 更新时间:2023-10-29 12:10:27 25 4
gpt4 key购买 nike

Bootstrap提供了 text-left ( Alignment classes ), text-lowercase ( Transformation classes ) 等类,这与定义内联样式相同(不是技术上的,但从逻辑上讲)。

在替代方法中,例如 bem ,它强制类应该反射(reflect)“物理” block 和元素,以及它们的修饰符(或元素的状态,例如 activecurrent),并且任何样式都应该纯粹在 CSS 中应用。

Bootstrap 方法似乎没有很好地分离结构和表示之间的关注点,并且违背了这一点 W3C Tip for Webmasters .

这个问题得到了很多人的响应:

  1. Niko Sams - Why I don't like Twitter Bootstrap
  2. Paradax - Bootstrap The good, the bad and the ugly
  3. bvision - Please stop embedding Bootstrap classes in your HTML!

如何在保持 HTML 标记语义的同时使用 Bootstrap?

最佳答案

Bootstrap 提供 mixins你可以使用。因此,与其在 HTML 中添加像 col-xs-12 这样的类,不如在元素的选择器 block 中使用 @include make-xs-column(12) .要添加一行,可以使用 @mixin make-row

引用 Alexey Morashko 的回答,而不是这个无语义的标记:

<div class="items-list row">
<div class="item col-xs-12 col-sm-6 col-md-4">
<div class="item-name">Product first</div>
<div class="item-description">Lorem ipsum dolor sit amet, consectetur adipisicing elit.</div>
</div>
<div class="item col-xs-12 col-sm-6 col-md-4">
<div class="item-name">Product second</div>
<div class="item-description">Ratione, ullam, reprehenderit aliquid saepe ab harum.</div>
</div>
<div class="item col-xs-12 col-sm-6 col-md-4">
<div class="item-name">Product third</div>
<div class="item-description"> totam repudiandae velit eum accusantium veritatis.</div>
</div>
</div>

您可以改用:

HTML

<div class="items-list">
<div class="item">
<div class="item-name">Product first</div>
<div class="item-description">Lorem ipsum dolor sit amet, consectetur adipisicing elit.</div>
</div>
<div class="item">
<div class="item-name">Product second</div>
<div class="item-description">Ratione, ullam, reprehenderit aliquid saepe ab harum.</div>
</div>
<div class="item">
<div class="item-name">Product third</div>
<div class="item-description"> totam repudiandae velit eum accusantium veritatis.</div>
</div>
</div>

CSS

.items-list {
@include make-row();
.item
@include make-xs-column(12);
@include make-sm-column(6);
@include make-md-column(4);
}
}

您可以在 Sitepoint 文章 - 5 Useful Sass Mixins in Bootstrap 中找到更多 Bootstrap mixins 示例.

关于html - 如何在维护语义 HTML 标记的同时使用 Bootstrap?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28824725/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com