html - CSS Style类类继承解决方法

标签 html css twitter-bootstrap zurb-foundation

这是我在这里看到的一个问题,但从来没有关注过这个问题。

现代网络开发的基石之一是设计和结构的分离。 CSS Zen Garden 是这条道路上的一个很好的展示和布道者。

但是,新趋势是响应性,而这个基石被搁置一旁。像 Zurb Foundation 和 Twitter Bootstrap 这样的框架非常棒,但它们迫使程序员在他的结构中添加样式。如果我在我的 HTML 代码上写 column-4grid-xs-4,我就是在明确地谈论那里的设计。

理想情况下,我会使用如下代码编写一个 CSS 文件:

.header-top {
  inherit "small-6 medium-4 columns";
}

那是不可能的,不支持。

一个可能的解决方法是将我的类添加到框架的 CSS 文件中。这很容易,但是

  1. 让我接触框架文件,这让升级变得痛苦;
  2. 结果可能会非常困惑。

问题是:我如何使用像 Foundation 和 Bootstrap 这样的框架,将设计和结构分开,充分利用它们的响应类?

最佳答案

如果您愿意重新考虑您对编译 CSS 的立场,我相信 Foundation 做了很多尝试并为您提供两全其美的方法:一个您无需自己编写的网格,同时仍然使用语义类。

如果您向下滚动 Foundation Docs 上的任何页面通常有一个“使用 Sass 自定义”部分,它为您提供 SCSS 混入,使您自己的类具有与 Foundation 的内置表示类相同的能力。

.header-top {
  @include grid-column(6);
}

即使没有提供 mixin 和像 Foundation 这样的框架,SCSS 也使您能够像在您的问题中一样扩展其他类:

.header-top {
  @extend .small-6;
  @extend .medium-4;
  @extend .columns;
}

在这种特殊情况下,我不确定您是否应该@extend 现有类或@include grid-column 连同media queries .我只用过之前版本的 Foundation,文档还有些欠缺,但基本原理已经有了。 :)

关于html - CSS Style类类继承解决方法,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20923874/

相关文章:

javascript - 如何使用 JavaScript 验证此 HTML 表单?

html - flex 盒子布局将三个元素组合在一列中

javascript - 在表格中显示 Javascript 链接

javascript - 如何验证 javascript 中的空字段并将错误消息传递给警报 Bootstrap

javascript - 使导航选项卡可折叠,就像 Bootstrap 中的导航栏一样

javascript - 如何在 div 标签上一个接一个地关闭和打开

javascript - 如何使完整的 DIV 可通过 anchor 单击...但在该 DIV 中,有一个不跟随该 anchor 的输入按钮?

javascript - 如果链接为空,如何隐藏图标

javascript - PHP防止同一页面上多个表单重新提交

CSS 模块如何从另一个文件的选择器级联?