この質問は CSS ウィザードに送られます。これをグーグルで検索しましたが、答えが見つかりませんでした。この時点で、それが可能かどうかわかりません:
別の要素内の要素の位置を、いわば半絶対的に指定するにはどうすればよいですか?
「 outerがその時点でどこにいても、要素の inner x ピクセルを、outerの左境界線の右側に配置してください」と言いたいです。
これはjavascriptでは可能かもしれませんが、cssでは可能ではないでしょうか?
この質問は CSS ウィザードに送られます。これをグーグルで検索しましたが、答えが見つかりませんでした。この時点で、それが可能かどうかわかりません:
別の要素内の要素の位置を、いわば半絶対的に指定するにはどうすればよいですか?
「 outerがその時点でどこにいても、要素の inner x ピクセルを、outerの左境界線の右側に配置してください」と言いたいです。
これはjavascriptでは可能かもしれませんが、cssでは可能ではないでしょうか?
#inner {
position: absolute;
left: 10px;
}
この CSS が実際に行うことは、位置の値が、、または#inner
である「最も近い」親の左端から 10px の位置に要素を配置することです。そのような要素が見つからない場合は、要素に対して絶対的に配置されますが、CSS で定義された位置を持つ親が内側の要素にあることを確認すると、その親内に絶対的に配置されます。absolute
relative
fixed
body
この JSFiddle を見てください。まず、html と CSS を見て、それがどのように構築されたかを確認してから、マウスを使用していずれかの要素をドラッグします (これは、純粋にデモンストレーション目的で、それらの JavaScript が行うことです)。外側の要素をドラッグすると、内側の要素も一緒に移動することに注意してください。要素をドラッグするときに行っていることは、それらtop
とleft
プロパティの値を変更することだけです。その親要素は絶対位置にあるため、画面上のどこに移動しても、子要素はその要素内の同じ場所にとどまります。:D
断然、簡単です!親に位置 (相対または絶対) を指定するだけで、絶対位置にある子は、最も近い位置にある親に対して「相対的」に配置されます。
混乱している?