- ベストアンサー
CSSについて 初心者です。positionについて
勉強中です。 すいません。教えてください。 「親要素を基準に子要素の位置を指定するには、 親要素に position: relative を指定し (absoluteにする理由があるならそちらでも良い)、 子要素に position: absolute を指定すればよいと言うことになる。」 となりますが、この概念がさっぱりわかりません。 確かに、子要素の位置をposition: absoluteで配置しようとした際に、 親要素にposition: relative(しかも、値はなし)で設定しないとうまく行きませんでした。 ネットで調べても全く意味がわかりませんでした。 なぜ子要素の位置をposition: absoluteで配置しようとした際に親要素に、position: relativeをしかも値なしで設定しないと、うまくいかないのか 詳しく教えていただけないでしょうか?m(..)m
- みんなの回答 (2)
- 専門家の回答
質問者が選んだベストアンサー
まず、 【参考サイト】 Visual formatting model http://www.y-adagio.com/public/standards/tr_css2/visuren.html#positioning-scheme をしっかり読んでください。 absoluteとは、【固定配置】と訳されます。 何に対して固定かと言うと、そのブロックを含むコンテナブロック(抱合ブロック)に対してです。 絶対配置された場合、それを含むコンテナボックスの'position'の値が[static]以外の最も近い祖先になる要素がある場合、その要素が基準になります。 relativeだけでなく、absolute、fixedも該当します。 その祖先にあたる要素が、ブロック要素の場合は、そのpaddingで指定された領域、relative、すなわちインライン要素の場合は、それが最初につくるボックスの上左が原点、下右が100%100%のあたいになる。 たぶん、この説明でもわからないと思うが、仕様書を読みつぶすしかないです。読みづらい翻訳ですが・・・英文なら判るなら( http://www.w3.org/TR/CSS2/ )
その他の回答 (1)
基準値を取ることで応用を利かせる余裕を持たせるためではないでしょうか。
お礼
内容もやっとわかりました。 どうもありがとうございました
お礼
とても参考になりました。 やっと概念もわかりました。 どうもありがとうございました。