右または下を設定して要素スタイルの位置を上と左にオーバーライドしようとすると、機能しません。左と上のプロパティはブラウザーの関心事であり、それらのプロパティを効率的に使用できる場所で右と下のプロパティを使用する人を見ることはありません。
3 に答える
height
またはが指定されておらずwidth
、問題の要素の位置がabsolute
またはである場合、 aと(またはとfixed
)の両方を指定することは実際には何かを意味します。たとえば、ボディの各エッジから 20 ピクセルの位置にライトボックスを配置し、残りのスペース。top
bottom
left
right
ただし、relative
配置の場合、または他の指定された寸法が計算を不可能にする場合、両方の端からの距離を指定すると命令の競合が発生するため、ブラウザは一方を他方より優先することを余儀なくされます。top
およびleft
は、レイアウト (および西洋文字のテキスト) の自然な優先順位であるため、恣意的に取られます。
ただし、値を指定することでtop
andをリセットして、 andを優先させることができます。left
auto
bottom
right
/* previous rules */
.thing {
top: 20px;
left: 20px;
}
/* your rule */
.thing {
top: auto;
left: auto;
bottom: 20px;
right: 20px;
}
右または下を設定して、要素スタイルの位置を上下にオーバーライドしようとしています
top
まず、 and を使用してプロパティleft
をオーバーライドすることはできませんright
bottom
それらをオーバーライドしたい場合は、次のような値を設定する必要があります
element.class {
top: [auto, inherit, px, %];
left: [auto, inherit, px, %];
}
/* Don't leave them blank */
ここで 2 番目の質問に進みます。
人々が右と下のプロパティを使用するのを見たことがないこれらのプロパティを効率的に使用できる場所
コンテナ要素と要素の右と下にボタンを配置する必要があり、height
動的width
である例を考えてみましょう。この場合、方法がわからないため、andから要素を配置できないためright: 0;
、 andを使用する必要があります要素のサイズは動的であるため、要素を取得する必要があります。bottom: 0;
left
top
px
left
top
top: auto; left: auto
以前の設定をオーバーライドして、代わりに右下を使用するように設定する必要があります。