首页 > web前端 > css教程 > 如何仅使用 CSS 创建三列水平布局,而不修改 HTML 结构?

如何仅使用 CSS 创建三列水平布局,而不修改 HTML 结构?

Linda Hamilton
发布: 2024-11-12 07:06:02
原创
514 人浏览过

How can I create a three-column horizontal layout with CSS only, without modifying the HTML structure?

仅使用 CSS 的 3 列布局

在 HTML 中,您有一个垂直排列的三列布局:

<div class="container">
   <div class="column-center">Column center</div>
   <div class="column-left">Column left</div>
   <div class="column-right">Column right</div>
</div>
登录后复制

您想要水平排列这些列,类似于下面的网格,而不改变 HTML 结构:

----------------------------------------------------
|              |                   |               |
| Column left  |   Column center   | Column right  |
|              |                   |               |
----------------------------------------------------
登录后复制

要实现此目的,请使用 CSS 属性:

.column-left{ float: left; width: 33.333%; }
.column-right{ float: right; width: 33.333%; }
.column-center{ display: inline-block; width: 33.333%; }
登录后复制

请参阅现场演示在这里。

为了更灵活的网格系统,创建一个具有更多列的网格系统:

.column {
    float: left;
    position: relative;
    width: 20%;
    
    /*for demo purposes only */
    background: #f2f2f2;
    border: 1px solid #e6e6e6;
    box-sizing: border-box;
}

.column-offset-1 {
    left: 20%;
}
.column-offset-2 {
    left: 40%;
}
.column-offset-3 {
    left: 60%;
}
.column-offset-4 {
    left: 80%;
}

.column-inset-1 {
    left: -20%;
}
.column-inset-2 {
    left: -40%;
}
.column-inset-3 {
    left: -60%;
}
.column-inset-4 {
    left: -80%;
}
登录后复制

并使用这样的 HTML:

<div class="container">
   <div class="column column-one column-offset-2">Column one</div>
   <div class="column column-two column-inset-1">Column two</div>
   <div class="column column-three column-offset-1">Column three</div>
   <div class="column column-four column-inset-2">Column four</div>
   <div class="column column-five">Column five</div>
</div>
登录后复制

以上是如何仅使用 CSS 创建三列水平布局,而不修改 HTML 结构?的详细内容。更多信息请关注PHP中文网其他相关文章!

来源:php.cn
本站声明
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn
作者最新文章
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板