hiyoko-programingの日記

プログラミングを勉強したてのひよっ子。   エンジニア目指して勉強中。

clearfixの仕組み

clearプロパティとfloatプロパティの間では、

後続要素をclear しただけでは、

フローティングボックス(どちらか左右に寄せた要素)が、

親要素のボックスからはみ出してしまうことがある。

この問題を解消するために考えられたのが、

「clearfix」で、このテクニックを用いることで、

親要素のボックスの高さ内に、

フローティングボックスの高さを含めることができる。

 

◉ clearfix

親要素のセレクタに「 : after 」をつけて記述することが特徴。

「 : after 」は「擬似要素」と呼ばれるもの1つで、

下記の例のように、

「content 」プロパティと併せて記述することで、

指定した要素の後ろに、content プロパティで指定した文言が追加される。

 

 EX) 【CSS

         article {

              width :600px ;

             marigin : 0 auto ;

         }

        section {

              border : solid  #FF0000 ;

             margin : 10px 0 ;

        }

       section:after {

              content : " " ;

              clear : both ;

             display : block ;

        }

      .img-left {

             float: left ;

      }

 

赤字部分について

  clearfix では、「 content : " " ;」として、親要素の最後に空要素を追加し、

  その空要素を「 clear : both ;」して float を解除している。

IE7以前のブラウザでは「:after 」は使用できないので、

古いブラウザにも対応させる場合は注意が必要。

 

◉擬似要素

CSS
  p.giji2:first-line {

    color: #7CFC00;
    font-weight: bold;

  }   

       p.giji3:first-letter {

                  font-size: 2em;
        }


【HTML】
<p class=”giji2″>本日のおすすめは、「伊勢海老のパスタ」です。

獲れたての伊勢海老をふんだんに使用した、自慢の一品です。</p>

<p class=”giji3″>本日のおすすめは、「伊勢海老のパスタ」です。

獲れたての伊勢海老をふんだんに使用した、自慢の一品とです。</p>

 

【結果】 

本日のおすすめは、「伊勢海老のパスタ」です。

獲れたての伊勢海老をふんだんに使用した、自慢の一品です。

日のおすすめは、「伊勢海老のパスタ」です。

獲れたての伊勢海老をふんだんに使用した、自慢の一品とです。