html - CSS:将 3 列布局转换为 2 列

标签 html css layout multiple-columns

我有一个包含 3 列的布局:

----------------------------------
|left     |middle      |right    |
----------------------------------

这很好,但我想在较小的屏幕上有 2 列:

---------------------
|left     |right    |
---------------------
|middle             |
---------------------

第二行的宽度为 100% 很重要。

是否可以仅使用 CSS 来实现?

我的 HTML 标记:

<article class="item">
    <div class="item-name">left</div>
    <div class="item-ingredients">middle</div>             
    <div class="item-prices">
        <div class="item-price">right1</div>                    
        <div class="item-price">right2</div>                    
        <div class="item-price">right3</div>
    </div>
</article>

最佳答案

使用媒体查询,这 link帮助您了解媒体查询

html

<article class="item">
    <div class="item-name">left</div>           
    <div class="item-prices">
        <div class="item-price">right1</div>                    
        <div class="item-price">right2</div>                    
        <div class="item-price">right3</div>
    </div>
    <div class="item-ingredients">middle</div>  
</article>

CSS

.item {float:left; width:100%}
.item div {
    float:left;
    width:33.3%;
    background-color:#555;
}
.item div div {width:33%}
.item div.item-ingredients {background-color:blue}
.item div.item-prices {float:right}

@media handheld, screen and (max-width: 500px){
    .item div.item-ingredients{
        width:100%;
    }
    .item div {width:50%}
}

顺便说一句,别忘了把这个放在你的 head 结束 tag 之前

<meta name="viewport" content="width=device-width" />

更新demo

注意:滚动 fiddle 看效果

希望这对你有帮助......

关于html - CSS:将 3 列布局转换为 2 列,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15738886/

相关文章:

javascript - 在 wordpress 中无法使用 jQuery easy ticker

html - text-align 和 margin CSS 属性没有响应

Jquery onmouseover 改变图像

user-interface - 使 SliverAppBar 将图像作为背景而不是颜色

html - 几个带圆 Angular 的嵌套 DIV

html - 基于 CSS 的网站无法在 Internet Explorer 上运行

javascript - 将图像动态加载到灯箱中

jquery - 如何在纯CSS表单下拉元素中隐藏元素点击菜单

html - 为什么时钟的 h1 标签没有完全垂直居中

android:layout_alignBottom 无法正常工作