CSS网格与响应式设计

CSS网格与响应式设计,css,grid,responsive-design,oocss,Css,Grid,Responsive Design,Oocss,我计划为一个站点使用网格系统,但我希望能够有选择地打破网格。例如,这意味着将size1of2转换为size1of1)。理想情况下,html应该如下所示: <div class="line"> <div class="unit size1of2 respond-480"> <h3>1/2</h3> <p>Lorem ipsum dolor sit amet...</p> <

我计划为一个站点使用网格系统,但我希望能够有选择地打破网格。例如,这意味着将
size1of2
转换为
size1of1
)。理想情况下,html应该如下所示:

<div class="line">
    <div class="unit size1of2 respond-480">
        <h3>1/2</h3>
        <p>Lorem ipsum dolor sit amet...</p>
    </div>
    <div class="unit size1of2 respond-480 lastUnit">
        <h3>1/2</h3>
        <p>Lorem ipsum dolor sit amet...</p>
    </div>
</div>

有人知道用OOCSS或其他网格系统实现这一点的方法吗?我正在寻找这种级别的控制,而不是简单的。

结果表明,将
respond480
类添加到行而不是单元更有意义。不足为奇。下面的代码对于现代浏览器非常有效。我使用了子选择器来简化事情——尽管它可能会解决旧浏览器的问题(即因为她说要避免
!important
,除非它是一个叶节点,否则她会将其放在代码中,这很奇怪

请检查。它有一个OOCSS体系结构,支持即时响应的设计(尽管它是可选的,如果您愿意,可以省略)

使用Cascade Framework,您可以实现如下示例:

<div class="col">
    <div class="col size1of2">
        <div class="cell">
            <h3>1/2</h3>
            <p>Lorem ipsum dolor sit amet...</p>
        </div>
    </div>
    <div class="col sizefill">
        <div class="cell">
            <h3>1/2</h3>
            <p>Lorem ipsum dolor sit amet...</p>
        </div>
    </div>
</div>

1/2
我爱你,我爱你

1/2 我爱你,我爱你

@media screen and (max-width: 480px) {
    .respond480 > .unit {
        width: auto;
        float: none;
    }
}
@media screen and (max-width: 319px) {
    .unit {
        float: none !important;
        width: auto !important;
    }
}
<div class="col">
    <div class="col size1of2">
        <div class="cell">
            <h3>1/2</h3>
            <p>Lorem ipsum dolor sit amet...</p>
        </div>
    </div>
    <div class="col sizefill">
        <div class="cell">
            <h3>1/2</h3>
            <p>Lorem ipsum dolor sit amet...</p>
        </div>
    </div>
</div>