ホームページ >ウェブフロントエンド >htmlチュートリアル >実際の結果が望ましい結果を達成できないのはなぜですか?これは主に li タグのフローティング効果の影響を受けます。スタイルで clear 属性を使用しても問題は解決できません。 _html/css_WEB-ITnose
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1 Transitional//EN" "http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd"><html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en"> <head> <meta http-equiv="content-type" content="text/html ; charset=utf-8"/><style>body{font-family:"Helvetica","Arial",sans-serif;color:#333;background-color:#ccc;margin:1em 10%;height:550px;width:1024px;}h1{color:#333;background-color:transparent;}a{color:#c60;background-color:transparent;font-weight:bold;text-decoration:none;}ul{float:left;padding:0;}li{float:left;padding:1em;list-style:none;clear:right;}img{clear:both;}</style> <title> Image Gallery </title> </head> <body> <h1>Snapshots</h1> <ul> <li> <a href="images/1.jpg" onclick="showPic(this); return false;" title="A fireworks display">Fireworks</a> </li> <li> <a href="images/2.jpg" onclick="showPic(this); return false;" title=" A cup of black coffee"> Coffee</a> </li> <li> <a href="images/3.jpg" onclick="showPic(this); return false;" title="A red ,red rose ">Rose</a> </li> <li> <a href="images/4.jpg" onclick="showPic(this); return false;" title=" The famous clock"> Big Ben</a> </li> </ul> <img src="images/5.jpg" alt="my image ga llery" id="placeholder"></img> <p id="description">Choose an image.</p> </body></html>
9f4ec7203b1ff8ac09bc4b0a7858bbb9画像を選択してください。94b3e26ee717c64999d7867364b1b4a3 16b28748ea4df4d9c2150843fecfba68
dbf4a1b9d12965251b02d12dd197d73e
73a6ac4ed44ffec12cee46588e518a5e
原理を説明できますか? ul または li タグのスタイルに「clear: right」を追加すると機能しないのはなぜですか?
まず ul の float: left を削除します
次に、li 要素は浮動要素であり、浮動要素はドキュメント フローなので、この UL は存在しません 高さ
追加:
ul自适应高度ul{ zoom:/*IE*/}ul:after{ content:' '; display:block; clear:both; height:0;}
以上です
1. まず第一に、フローティングについて話しましょう
フローティング要素にはデフォルトで幅がないため、コンテンツに依存する必要があります幅をサポートするか、手動で幅を追加するには、
ff6d136ddc5fdfeffaf53ff6ee95f185 は幅を追加せずに浮動するため、すべての 25edfb22a4f469ecb59f1190150159c6 の幅になります。 通常の状況では、 & lt; li & lt; a & gt; の場合は、 overflow: hidden を追加します。 Clear T Clear: Both の意味は、現在の要素に対する浮動要素の影響をクリアすることです。
つまり、Clear: 両方を「現在の要素」 (通常は非浮動要素) に追加する必要があります
通常、レイアウトは全体から、レイアウトは全体からローカルになります。
つまり、最初に大きなフレームワークをレイアウトしてから、さまざまな小さなモジュールを整理する必要があります。例:
<!DOCTYPE html><html lang="en"><head> <meta charset="UTF-8"> <title>layout</title></head><body> <div class="header"> <div class="logo"></div> <div class="nav"></div> </div> <div class="main"> <div class="main-left"></div> <div class="main-right"></div> </div> <div class="footer"> </div> </body></html>