CSSでdivの後の改行を防ぐ方法はありますか?
例えば私は持っています
<div class="label">My Label:</div>
<div class="text">My text</div>
そしてそれを次のように表示したい:
私のラベル:私のテキスト
回答:
display:inline;
または
float:left;
または
display:inline-block;
-一部のブラウザでは動作しない場合があります。
div
here を使用する目的は何ですか?span
インラインレベルの要素であるのに対して、a div
はブロックレベルの要素であるため、をお勧めします。
上記の各オプションは動作が異なることに注意してください。
display:inline;
はとdiv
同等のものに変わりspan
ます。それはの影響を受けないだろうmargin-top
、margin-bottom
、padding-top
、padding-bottom
、height
、など
float:left;
をdiv
ブロックレベルの要素として保持します。それでもブロックのようにスペースを占有しますが、幅はコンテンツに合わせて調整されます(を想定width:auto;
)。clear:left;
特定の効果にはが必要になる場合があります。
display:inline-block;
「両方の長所」のオプションです。div
ブロック要素として扱われます。これは、のすべてに対応しmargin
、padding
、およびheight
ブロック要素のための予想通りのルール。ただし、他の要素内に配置する目的では、インライン要素として扱われます。
詳細については、こちらをお読みください。
div
要素は、そのデフォルトでは、彼らは完全な利用できる幅をUPP取る、ブロック要素です。
1つの方法は、それらをインライン要素に変換することです。
.label, .text { display: inline; }
これは、span
要素の代わりにdiv
要素を使用するのと同じ効果があります。
別の方法は、要素をフロートさせることです:
.label, .text { float: left; }
これにより、要素の幅がどのように決定されるかが変更されるため、thwyはそのコンテンツと同じ幅になります。また、画像が互いに並んで流れるのと同じように、要素を互いに並べてフロートさせます。
要素の変更を検討することもできます。div
要素は、文書の部門を対象として、私は通常使用label
してspan
、このような構造のための要素を:
<label>My Label:</label>
<span>My text</span>