ホームページ >ウェブフロントエンド >htmlチュートリアル >インライン要素間の改行によって生じる空白の処理_html/css_WEB-ITnose
インターネットからの画像
インライン、インラインブロック要素間の改行により、スペースのような空白が発生します。遭遇したかどうかはわかりませんが?たとえば、次のコード:
<a>1</a><a>2</a>
この種の問題はレイアウトにほとんど影響を与えず、簡単に無視されます。しかし、特定の極端な状況では、この問題がさらに拡大する可能性があります。たとえば、次のコードは次のとおりです。
<ul> <li>Item content</li> <li>Item content</li> <li>Item content</li></ul><style>li{ width:33.3%; display:inline-block; background:#abc; }</style>
このような行構造では、インライン要素の幅が正確に割り当てられ、改行によって生じる空白の影響が増幅されます。この問題を解決するにはどうすればよいでしょうか?
<ul><li>Item content</li><li>Item content</li><li>Item content</li></ul>この方法では問題は解決されませんが、回避されます。これは影響のない最も単純な方法ですが、後で他の人がコードをフォーマットしやすく、明らかにこの方法の保守性は低すぎます。
<ul> <li>Item content</li><!----><li>Item content</li><!----><li>Item content</li></ul>
<ul> <li>Item content</li ><li>Item content</li ><li>Item content</li></ul>
.inline-block-list li { margin-left: -4px;}この方法は最悪です。問題を解決するために新たな問題が発生するリスクが高まる可能性があり、一方で堅牢性と保守性が低下します。これらのソリューションはテスト済みであり、1 番目と 3 番目のソリューションが推奨されます。
この記事は、Segmentfault によるインラインブロック要素間の空白の削除に関する記事を参照しています。