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>