Heim >Web-Frontend >CSS-Tutorial >Wie kann ich nur mit CSS ein dreispaltiges horizontales Layout erstellen, ohne die HTML-Struktur zu ändern?

Wie kann ich nur mit CSS ein dreispaltiges horizontales Layout erstellen, ohne die HTML-Struktur zu ändern?

Linda Hamilton
Linda HamiltonOriginal
2024-11-12 07:06:02534Durchsuche

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

3-Spalten-Layout nur mit CSS

In HTML haben Sie ein Layout mit drei vertikal angeordneten Spalten:

<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>

Sie möchten diese Spalten horizontal anordnen, ähnlich dem Raster unten, ohne die HTML-Struktur zu ändern:

----------------------------------------------------
|              |                   |               |
| Column left  |   Column center   | Column right  |
|              |                   |               |
----------------------------------------------------

Um dies zu erreichen Verwenden Sie dazu CSS-Eigenschaften:

.column-left{ float: left; width: 33.333%; }
.column-right{ float: right; width: 33.333%; }
.column-center{ display: inline-block; width: 33.333%; }

Sehen Sie sich hier die Live-Demo an.

Für ein flexibleres Rastersystem erstellen Sie ein Rastersystem mit einer größeren Anzahl von Spalten:

.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%;
}

Und verwenden Sie HTML wie folgt:

<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>

Das obige ist der detaillierte Inhalt vonWie kann ich nur mit CSS ein dreispaltiges horizontales Layout erstellen, ohne die HTML-Struktur zu ändern?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn