ホームページ >ウェブフロントエンド >CSSチュートリアル >Twitter Bootstrap で固定幅のサイドバーと流動的な幅のコンテンツ領域を実現するにはどうすればよいですか?
Twitter Bootstrap を使用した固定流動レイアウトの実装
Twitter Bootstrap の人気にもかかわらず、2 つのレイアウトを作成する機能について懸念が提起されています。 - 固定幅のサイドパネルと可変幅のコンテンツを特徴とする列レイアウト
考えられる解決策:
元の解決策 (Bootstrap v1.0)
変更された HTML とCSS では、Bootstrap v1.0 で固定流体レイアウトを実現できます。更新されたコードは次のとおりです。
<div class="container-fluid fill"> <div class="row-fluid"> <div class="fixed"> <!-- Fixed width --> ... </div> <div class="hero-unit filler"> <!-- Removed spanX class --> ... </div> </div> </div>
.fixed { width: 150px; /* Fixed width */ float: left; } .fixed + div { margin-left: 150px; /* Match fixed width */ overflow: hidden; } /* CSS to ensure sidebar and content are same height (optional) */ html, body { height: 100%; } .fill { min-height: 100%; position: relative; } .filler::after{ background-color:inherit; bottom: 0; content: ""; left: 0; margin:inherit; min-height: 100%; position: absolute; top: 0; width: inherit; z-index: -1; }
更新されたソリューション (Bootstrap v2.0)
「.container-fluid」クラスの削除Twitter Bootstrap v2.0 では、元のソリューションと互換性がなくなりました。ただし、CSS をわずかに変更することで、2 列の固定流体レイアウトを実装できます。
.fixed { width: 150px; /* Fixed width */ float: left; } .fixed + div { margin-left: 150px; /* Match fixed width */ overflow: hidden; }
サイドバーとコンテンツの高さを均等にする
ただし、必須ではありません。 、多くの場合、サイドバーとコンテンツの列が同じ高さであることが望ましいです。これは、「.filler」クラスを流体幅列に追加し、::after 疑似セレクターを使用して、残りのスペースを埋めるように見えるフィラー要素を追加することで実現できます。
.filler::after { background-color: inherit; bottom: 0; content: ""; height: 100%; left: 150px; /* Match fixed width */ position: absolute; top: 0; width: 100%; z-index: -1; }
注:
以上がTwitter Bootstrap で固定幅のサイドバーと流動的な幅のコンテンツ領域を実現するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。