有没有办法防止在使用div的div之后换行?
例如我有
<div class="label">My Label:</div>
<div class="text">My text</div>
并希望它显示为:
我的标签:我的文字
Answers:
display:inline;
要么
float:left;
要么
display:inline-block;
-可能不适用于所有浏览器。
div
在这里使用a的目的是什么?我建议使用a 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全部可用宽度。
一种方法是将它们变成内联元素:
.label, .text { display: inline; }
这将与使用span
元素而不是div
元素具有相同的效果。
另一种方法是浮动元素:
.label, .text { float: left; }
这将改变元素宽度的确定方式,因此宽度仅与元素内容一样宽。它还将使元素彼此浮动,类似于图像彼此并排流动。
您也可以考虑更改元素。该div
元素用于文档划分,我通常将label
和span
元素用于这样的构造:
<label>My Label:</label>
<span>My text</span>
尝试将clear:none
css属性应用于标签。
.label {
clear:none;
}
div
仍然具有默认值width:auto
,使其占用所有可用宽度。