HTML & CSS - Layout

14388 ワード

HTML&CSSのレイアウト機能を検討する


position(相対、絶対、fixed)、inline、inline-block、block、floatなどについて...**


1. position:

  • static
    -HTML要素のデフォルトは静的位置です.
    -場所がStatic機能に設定されている場合、top、bottom、left、right propertyの影響を受けません.
    - position: static; 特殊な方法ではなく、ページ上の各要素の配置プロセスに基づいてその位置を決定します.

  • relative
    -基本位置に対応して、「position:relative」を受け入れる要素の位置を決定します.
    -top,right,bottom,leftのpropertyを別途設定すると、通常の位置から外れます.このような場合、他のコンテンツは要素によるスペースに入ることができません.

  • fixed
    - "position;fixed;"それに応じてビューポートに配置されます.これは、ページを上下にスクロールしても同じ位置にとどまることを意味します.
    -エレメントの位置を指定するには、上部、右側、下部、および左側のプロファイルを設定する必要があります.
    -固定された要素は、ページにスペースではなく埋め込まれます.固定されていなければ、他の要因の対応する位置に介入することができます.

  • absolute
    -「position:absolute」は、前に作成した最も近い要素に対応します(ビューポートに固定されている機能とは相対的に位置が異なります).
    -ただし、エレメントが「position:absolute」として指定され、場所の祖先エレメント(祖先)が指定されていない場合は、ドキュメントの本文を基準としてページを上下にスクロールすると、それは移動します.*ここでいう「位置決め」はstatic以外のすべての要素を意味する.
  • <コード例>
    ####[HTML FILE]####
    
    <link rel="stylesheet" href="style.css">
    
    <secion>static</br>
    
    <span>span1</span>
    <span>span2</span>
    <span>span3</span>
    <div>div1</div>
    
    <br>relative</br>
    
    <span class="top">top</span>
    <span class="right">right</span>
    <span class="bottom">bottom</span>
    <div class="left">left</div>
    
    <br>absolute</br>
    
    <div>
        <div id="absolute">absolute</div>
      </div>
      <div id="parent">
        <div id="child">children</div>
      </div>
    
    <br>fixed</br>
    
    <div>
        <div id="fixed">fixed</div>
    </div>
    ####[CSS FILE]####
    
    br {
        font-size: 50px;
    }
    
    span, div {
        background: skyblue;
      }
    
      span, div {
        background: skyblue;
      }
      
      .top {
        position: relative;
        top: 5px;
        z-index: 1;
      }
      
      .right {
        position: relative;
        right: 5px;
      }
      
      .bottom {
        position: relative;
        bottom: 5px;
      }
      
      .left {
        position: relative;
        left: 5px;
      }
    
      #absolute {
        background: skyblue;
        position: absolute;
        right: 0;
      }
      
      #parent {
        position: relative;
        width: 100px;
        height: 100px;
        background: skyblue;
      }
      
      #child {
        position: absolute;
        right: 0;
      }
    
      #fixed {
        background: skyblue;
        position: fixed;
        right: 20;
      }
    2.inline:特定の文の形状に干渉しないで、1つの文、段落内に箱でテキストを包むことができます.
    3.block:特定の文を組み合わせてブロックします.ブロック化すると、次の空間を線で切断し、前後の行要素が横方向に表示されるという特徴があります.
    4.inline-block:上記のdisplay:inlineと比較して、inline-blockの最大の違いは、内部要素に縦横値を設定できることです.また、inline blockはdisplay:blockと比較して各要素の後に改行(改行)することはありません.したがって、それぞれの異なる要素は互いに左右に位置することができる.
    <コード例>

    5. float:
  • 「float」は、要素が正常なストリームから外れ、本来の「浮」の意味を持つ文字で、Webページに画像を浮かべてテキストと一緒に配置する属性です.
  • 要素の後にclearプロパティがある場合、ページフローは変化します.
  • floatは、最初は画像およびテキストの配置に使用されたが、レイアウトに使用された.
  • ですが、最近はflex機能を使う傾向が増えています.