HTML のインラインブロックの空白を素早く削除する 5 つの方法

HTML のインラインブロックの空白を素早く削除する 5 つの方法

inline-block プロパティ値は、「インライン」要素のマージンとパディングを制御する必要がある場合に非常に役立ち、これらの要素を「ブロック」または「フロート」にする必要がなくなります。しかし、問題があります。インライン ブロックを使用すると、HTML 要素間の空白がページ上に表示されます。非常に迷惑です。これらの空白を削除する方法はいくつかありますが、そのうちの 1 つは非常に巧妙な方法です。

方法1:要素間にスペースを置かない

これを修正する 100% 確実な方法は、HTML 内の要素間に空白を残さないことです。

CSSコードコンテンツをクリップボードにコピー
  1. <ul>
  2.   
  3. <li>アイテムの内容</li>
  4.   
  5. <li>アイテムの内容</li>
  6.   
  7. <li>アイテムの内容</li>
  8.   
  9. </ul>

もちろん、これは見た目が乱雑でコードの保守が困難になりますが、実用的で直感的であり、そして最も重要なのは...信頼性が高いことです。

方法2:親要素にfont-size: 0を設定する

この空白の問題に対する最善の解決策は、これらのインライン ブロック要素の親要素に font-size: 0 を設定することです。 <UL> 内にインライン ブロック <LI> がある場合は、次のようにします。

XML/HTML コードコンテンツをクリップボードにコピー
  1. .inline-block-list { /* このクラスの ul または ol */
  2. フォントサイズ: 0;
  3. }
  4.   
  5. .インラインブロックリスト li {
  6. font-size: 14px; /* フォントサイズを元に戻す */
  7. }
  8.   

親要素のフォント サイズが子要素に影響を与えないようにするには、子要素のフォント サイズ値を再設定する必要がありますが、これは通常簡単です。問題が発生する可能性があるのは、相対的なフォント サイズを使用する場合のみです。しかし、ほとんどの場合、この方法で問題は解決できます。

方法3: HTMLコメント

この方法は少し強引ですが、同様に機能します。 HTML 要素にコメントを追加すると、要素間にスペースがないのと同じ効果が得られます。

XML/HTML コードコンテンツをクリップボードにコピー
  1. < ul >   
  2.   < li >アイテムコンテンツ</ li > <!--
  3. --><li>アイテムの内容</li><!--
  4. --> < li >アイテムの内容</ li >   
  5. </ ul >   
  6.   

一言で言うと…気持ち悪い。一言で言うと…気持ち悪い。 3つの言葉で言えば…わかりましたね。しかし、それは機能します!

方法4:マイナスマージン

方法 2 と非常に似ています。申し訳ありません。 inline-block の柔軟性を活用して、負のマージンを与えて空白を非表示にすることができます。

XML/HTML コードコンテンツをクリップボードにコピー
  1. .インラインブロックリスト li {
  2. 左マージン: -4px;
  3. }
  4.   

この方法は、さまざまな状況を考慮する必要があり、予期しないギャップが生じる場合もあるため、あまりお勧めできません。このトリックは使わないほうがよいでしょう。

方法5:チェーンリンク

HTML マークアップを活用するもう 1 つの方法は、要素の終了タグを次の要素の開始タグの近くに配置することです。

XML/HTML コードコンテンツをクリップボードにコピー
  1. < ul >   
  2.   < li >アイテムコンテンツ</ li   
  3.   > < li >アイテムの内容</ li   
  4.   > < li >アイテムの内容</ li >   
  5. </ ul >   
  6.   

HTML コメントほど醜くはありませんが、コードの読みやすさに関係なく、手動で空白を削除したいと思います。

理想的なアプローチはありませんが、Web ページに空白を残さないのは悪いアプローチです。これは、インライン ブロックを使用しないように警告するものではありません。インライン ブロックは依然として非常に便利です。インライン ブロック内の空白をどのように処理するかを理解する必要があるだけです。

以上がこの記事の全内容です。皆様の勉強のお役に立てれば幸いです。また、123WORDPRESS.COM を応援していただければ幸いです。

<<:  CSS3 で実装された 10 種類の読み込みアニメーションから 1 つを選んで実行してみませんか?

>>:  MySQL初心者はグループ化や集計クエリの煩わしさから解放されます

推薦する

MySQL トリガーの使用方法と利点と欠点の紹介

目次序文1. トリガーの概要2. トリガーの作成2.1 トリガー構文の作成2.2 コード例3. トリ...

MySQLは、where in()順序ソートを実装するためにfind_in_set()関数を使用します。

この記事では、MySQL で find_in_set() 関数を使用して where in() の順...

オンデマンドで Vue コンポーネントを自動的にインポートする方法

目次グローバル登録部分登録ローカル自動登録さまざまなソリューションの比較コンポーネント名について参照...

Vueは移動可能なフローティングボタンを実装します

この記事の例では、どこにでも移動できるフローティングボタンを実現するためのVueの具体的なコードを共...

Vue router-viewとrouter-linkの実装原理

使用 <div id="アプリ"> <router-link ...

JSONP クロスドメインシミュレーション Baidu 検索

目次1. JSONPとは何か2. JSONPクロスドメインリクエスト3. Baidu検索をシミュレー...

MySql 自動切り捨て例の詳細な説明

MySql 自動切り捨て例の詳細な説明友人が質問しました。プロジェクト内で挿入または更新ステートメン...

MySQL で 1 つのテーブルのフィールドを使用して別のテーブルのフィールドを更新する方法

1. 1列を変更する 学生の更新、都市c s.city_name = c.name を設定します こ...

HTML ボディタグと HTML でよく使われる制御タグの詳細な説明

1. <body> タグ: Web ページの本体をマークするために使用されます。body...

初心者のための入門チュートリアル⑤:ウェブサイト登録はとても簡単、簡単な登録のヒント

スペースを購入してウェブサイトを構築したことがある友人なら、ウェブサイトは正式に開設する前に登録する...

JavaScript で右クリック メニューを統合する layim のサンプル コード

目次1. 効果の実証2. 実装チュートリアル3. 最後に、完全なコードを添付します4. その他の右ク...

Linux ファイアウォール設定の詳細な手順 (yum ウェアハウス設定に基づく)

序文この実験では、デバッグ用に2つの仮想マシン(CentOs6とRed Hat 6)を準備します。 ...

Linuxシステムの操作レベルの詳細な紹介

目次1. Linuxシステムの操作レベルの概要2. 実行レベルを確認する3. 現在のシステムの動作レ...

Dockerを使用してサーバー上で複数のPHPバージョンを実行する

PHP7 がリリースされてからかなり時間が経ちますが、パフォーマンスが大幅に向上したことはよく知られ...

データ構造 - ツリー (III): 多方向検索ツリー B ツリー、B+ ツリー

多方向探索ツリー完全二分木の高さ: O(log2N)、ここで2は対数完全なM方向探索木の高さ: O(...