今まで<br clear="both">などと書いていたのですが
html5でclearは<br>の属性には使えないとのこと。
そこでcssを使い<br class>と書こうとしましたが
<br>はそもそも改行目的で正しくないらしい。
<div class></div>とするのも中身が空なので違和感があります。
どう書くのがお勧めでしょうか?
*ページのテンプレートなど汎用性を持たせるため単独が望ましい。<p>などの次文章に(class)はつけたくありません。
よろしくお願いします。
こちらが参考になると思います。
http://kojika17.com/2013/06/clearfix-2013.html
clearfixとは
clearfixを最初に考案したのは、オーストラリア人のWebデベロッパー Tony Aslettという方が、2004年5月8日に擬似要素を使用した手法を公表したのが、clearfixのはじまりです。
。。。
IE6, IE7のブラウザのシェアは、この記事を書いている時点で、それぞれ6.27%と1.9%です。(Net Applications 調べ 2013年5月現在)
IE7以下のブラウザのシェア率も低くなってきたので、これらのブラウザを除外した形で再考しました。.clearfix:after { content: ""; clear: both; display: block; }
http://kojika17.com/2011/04/float-clearfix.html
人力検索でもオリジナルの clearfix と似たような CSS が使われています。
http://q.hatena.ne.jp/css/newquestion.css?20141201
.clearfix:after { content: ""; /* new clearfix */ visibility: hidden; display: block; font-size: 0; content: " "; clear: both; height: 0; } * html .clearfix { zoom: 1; } /* IE6 */ *:first-child + html .clearfix { zoom: 1; display: inline-block; } /* IE7 */ .clearfix { display: block; *zoom: 1; } .clearfix:after { display: block; visibility: hidden; font-size: 0; height: 0; clear: both; content: "."; }
私の場合は、コンテンツの入っているエリアに、下記の回り込み解除のクラスを指定しております。
1)CSS側記述
.clearbox{zoom:100%;}
.clearbox:after{content:'.'; clear:both; height:0; display:block; visibility:hidden;}
※ :afterで . を追加し回り込みを解除してから、最小のブロック要素に指定して表示を消します。ちなみにzoom:100%は古いブラウザ対策なので無くても支障はないかもしれません。
2)html側記述
<div class='clearbox'>
本文本文本文本文本文本文本文本文本文本文本文本文本文本文本文本文本文本文本文本文本文本文本文本文本文本文本文本文本文本文本文本文本文本文本文本文
</div>
これでdiv内の回り込みが解除されます。なにか疑問点があれば引き続き質問してください。