【问题标题】:HTML5 & Bootstrap class="container", can it be applied to body or only div?HTML5 & Bootstrap class="container",可以应用于body还是只应用于div?
【发布时间】:2015-03-13 03:50:59
【问题描述】:

我一直碰到这个每个人都会遇到的问题: a) 想要用 div 包装 HTML5 语义标签,并且 b) 希望将类选择器应用于 div 而不是语义标签。就好像人们出于某种原因害怕将类贴到语义标签上。

例如,我经常被告知这是“不正确的”,

<body class="container">
    <header class="row">
        <div class="col-md-12"> ...

这样的东西更可取,

<body>
   <div class="container">
      <div class="row">
          <div class="col-md-12"> ...

在这里,第一个示例我在 h2 标记中有列类

    <div class="row">
        <h2 class="col-4 feature">Featured Work</h2>
    </div>

但“正确”的方法是添加另一个 div 标签来应用该类,

    <div class="row">
        <div class="col-4 feature">
            <h2>Featured Work</h2>
        </div>
    </div>

我知道这可能是基于意见的,但我发现在处理 HTML5 时,意见实际上很重要,因为几乎每个人都有问题,没有其他方法可以在没有意见的情况下敲定细节。

【问题讨论】:

  • 你是正确的观点不是stackoverflow的用途。你所有的例子都是完全正确的。使用一种风格并坚持下去。
  • 这是一个非常固执己见的问题,但我建议坚持文档所说的内容。将container 应用于 body 对我来说没有意义,但如果它适合您的需求,那就去吧。
  • 将 CSS 类应用于 HTML 标签并没有错。如果您的代码需要它,您可以这样做,尽管我无法理解为什么设计需要它很重要。另外,关于所谓的“正确”方式,为什么要专门插入div标签只是为了应用CSS?无论哪种方式,这更多的是偏好问题,您找到的大多数答案将更多是意见,而不是“最佳实践”。
  • @Padawan 没错,它们是矛盾的!这是矛盾的原因是因为“如果你的代码需要它,你可以做到”和“我无法理解为什么设计需要这个很重要”只是没有任何技术推理支持的观点,但是而是根据个人喜好。换句话说,这两个矛盾的陈述都没有提供甚至试图提供任何技术论据。因此,任何答案都充满意见,而不是任何技术原因或最佳实践。
  • @Padawan 好吧,对于初学者来说,您非常清楚这两种方法在产生输出方面都有效。您只需要知道哪种方法是“更好的方法”。好吧,答案是没有,但是如果您对获得意见更感兴趣,那么您的问题的确切性质(就 sn-p 而言)可以在我们的其他网站之一上得到更好的服务 - codereview.stackexchange.com

标签: css html twitter-bootstrap class containers


【解决方案1】:

我建议坚持

<body>
   <div class="container">
      <div class="row">
          <div class="col-md-12"> ...

格式。

如果您打算与许多其他开发人员或使用引导模板合作 - 您会看到 container 类通常嵌套 row 类 div。

由于我们谈论的是标记,因此没有正确答案,但强烈建议遵循此约定。

  1. 为了一致性
  2. 为了轻松更改样式和与其他项目的可重用性 - 这甚至为从其他项目或引导模板中直接替换 css 样式表打开了大门。 (我在这方面取得了一些令人惊讶的好结果)。

但是,如果您坚持给非 div 标签“container”和“col-X”标签,请保持一致。不过我不会推荐它,并且会认为任何遵循自己约定的模板都是代码质量差的指标。

【讨论】:

    猜你喜欢
    • 2021-03-30
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2016-11-03
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多