我目前正在详细阐述Nicole Sullivan 的 OOCSS 网格模块的变体,它只需要一个容器类来确定直接后代的布局。我知道这需要注意只能在支持 CSS3 的浏览器中工作。
这是差异的示例:
Vanilla OOCSS 网格规则:
.unit1of4 {
width: 25%;
}
我的简化网格规则:
.line > :nth-child(1):nth-last-child(4),
.line > :nth-child(2):nth-last-child(3),
.line > :nth-child(3):nth-last-child(2) {
width:25%;
}
另一个重要的警告是假设元素的小数大小完全由其兄弟元素的数量决定 - 而这是这段代码的基本点(以实现更精简的 HTML,而无需到处都有明确的大小),可能会有一些例外情况。有不成比例的宽度。
由于我的选择器的特殊性,我不能简单地将 OOCSS 模块重新插入:unitXofY
在 HTML 中指定一个类将专门用于取代默认假设,但实际上我的选择器更强大,并且总是会覆盖指定的类.
我正在寻找的是在不限制特定性的实际效果的情况下取代这些选择器的最简洁或最优雅的方式。也就是说,除了它的类之外,它不能对所选元素做出任何不总是正确的假设。