並列要素の一方を固定幅に、もう一方を可変で画面幅いっぱいに広がるようにするCSSサンプル
レスポンシブデザインでWebページを作成しているとき、テーブル以外でも上記のように並列要素の一方を固定幅にして、もう一方を画面幅いっぱいに広がる可変にしたいといった場合が出てきます。
各要素の横幅をパーセント指定(30%と70%等)することもできるのですが、この場合画面幅によって見出し部分が改行してしまったり、逆に余白ができすぎたりと、省スペースが求められるスマートフォン表示ではちょっと微妙・・・といったケースがどうしても発生してしまうのです。
実はこれ、CSSのcalcという機能を使うと実現することができます。今回はこのやり方について紹介したいと思います。
HTML
<dl>
<dt>見出し部</dt>
<dd>コンテンツ部</dd>
</dl>
CSS
dl dt {
display:inline-block;
width: 150px;
}
dl dd {
display:inline-block;
width: calc( 100% - 150px ); /* 画面幅から150px引いた幅を指定している */
}
実に簡単ですね。tableやbootstrapを使わなくても、この方法ならCSSだけで一方の側の幅のみ可変にすることができます。是非ご活用ください。
投稿者プロフィール
最新の投稿
コンテンツ2023.05.26なぜSCSSを使わないのか
コンテンツ2023.05.23【JQuery】appendで追加した要素でclickイベントが発火しないときの対処法
コンテンツ2023.05.19ホームページ制作会社に作業を依頼するときの注意点
Webサイト制作実績2023.05.16ウイングアーク1st株式会社様の情報メディア「データのじかん」のサイトリニューアルに協力させていただきました。