[解決済み】マージンやパディングを親コンテナの高さに対する割合で設定するには?
2022-04-04 21:35:08
質問
cssで以下のような縦並びを作るのに頭を悩ませていました。
.base{
background-color:green;
width:200px;
height:200px;
overflow:auto;
position:relative;
}
.vert-align{
padding-top:50%;
height:50%;
}
<!-- and used the following div structure. -->
<div class="base">
<div class="vert-align">
Content Here
</div>
</div>
このケースではうまくいったようですが、ベースとなるdivの幅を広げたり狭めたりすると、縦方向の整列が崩れてしまうのには驚かされました。padding-top プロパティを設定すると、親コンテナ (この場合は base) の高さに対する割合でパディングが取られると思っていましたが、上記の値 50 パーセントは幅に対する割合で計算されています :(
JavaScriptに頼らず、パディングやマージンを高さの割合で設定する方法はありますか?
解決方法は?
修正方法は、そう、垂直パディングとマージンは幅に対して相対的ですが
top
と
bottom
はない。
そこで、div を別の div の中に配置し、内側の div で、次のようなものを使用します。
top:50%
(ただし
position
それでもうまくいかない場合は)
関連
-
[解決済み】エラー。要求されたURL"[no URL]"は無効です。
-
[解決済み】divの高さを画面の残りスペースで埋めるようにする
-
[解決済み] bodyタグに追加された奇妙なiframe、`rufous-sandbox`について
-
[解決済み] 入力のラジオ要素を水平に揃えるにはどうしたらいいですか?
-
[解決済み] textareaのresizableプロパティを無効にするにはどうしたらよいですか?
-
[解決済み] ページを再読み込みせずにURLを変更するにはどうすればよいですか?
-
[解決済み] div' コンテナに合わせて画像を自動リサイズするにはどうしたらいいですか?
-
[解決済み] How can I set the default value for an HTML <select> element?
-
[解決済み] divの内容を下に揃える方法
-
[解決済み] CSS 100% height と padding/margin の関係
最新
-
nginxです。[emerg] 0.0.0.0:80 への bind() に失敗しました (98: アドレスは既に使用中です)
-
htmlページでギリシャ文字を使うには
-
ピュアhtml+cssでの要素読み込み効果
-
純粋なhtml + cssで五輪を実現するサンプルコード
-
ナビゲーションバー・ドロップダウンメニューのHTML+CSSサンプルコード
-
タイピング効果を実現するピュアhtml+css
-
htmlの選択ボックスのプレースホルダー作成に関する質問
-
html css3 伸縮しない 画像表示効果
-
トップナビゲーションバーメニュー作成用HTML+CSS
-
html+css 実装 サイバーパンク風ボタン
おすすめ
-
[解決済み】エラー。要求されたURL"[no URL]"は無効です。
-
[解決済み] html : iframeでhtmlのコンテンツが表示されない。
-
[解決済み] div に斜めのエッジを作成する [重複] 。
-
[解決済み] HTML5 Validation Error: body start tag が見えたが、同じタイプの要素がすでに開かれていた
-
[解決済み] ChromeのデベロッパーツールでHTML Bodyにcz-shortcut-listen="true "が表示される?
-
[解決済み] HTMLファイルへのリンクは可能ですか?
-
[解決済み] Font Awesome アイコンをプレースホルダーで使用する
-
[解決済み] TD rowspan が機能しない
-
[解決済み] Visual Studio Code CSSエラー「空のルールセットを使用しないでください」【終了しました
-
[解決済み] CSSでテキストを垂直方向にセンタリングするには?[重複しています]