我有兩個div
。一個div
表示標題內容,其他div
表示詳細內容。我希望兩個div
的內容並排排列。正確的div的內容(即細節)應該始終顯示在右側。如果詳細內容不適合,則extra
內容應顯示在下一行。像下面的那樣,File4.pdf和File5.pdf不適合,所以它轉到下一行。使用div並排對齊內容
我能做到這一點使用table
,但我想用div
,而不是表。但是當內容不適合時,使用div
整個內容移動到下一行。
這裏是JSfiddle
我有兩個div
。一個div
表示標題內容,其他div
表示詳細內容。我希望兩個div
的內容並排排列。正確的div的內容(即細節)應該始終顯示在右側。如果詳細內容不適合,則extra
內容應顯示在下一行。像下面的那樣,File4.pdf和File5.pdf不適合,所以它轉到下一行。使用div並排對齊內容
我能做到這一點使用table
,但我想用div
,而不是表。但是當內容不適合時,使用div
整個內容移動到下一行。
這裏是JSfiddle
您需要在右側元素的容器,與下面的樣式
float:left;
width:calc(100% - 222px); /*the -222px is the width of the left element + the padding + the margin*/
overflow:hidden;
完全更新的例子(從所提供的jsfiddle )
dl {
margin-bottom: 30px;
}
dl dt {
float: left;
font-weight: bold;
margin-right: 2px;
width: 200px;
}
dl dd {
margin: 2px 0;
}
.details-container {
float: left;
width: calc(100% - 222px);
overflow: hidden;
}
<div style="float:left;padding-right:20px;">
<dl>
<dt>Name:</dt>
<dd>Foo Bar</dd>
<dt>Date:</dt>
<dd>01/04/2017</dd>
</dl>
</div>
<div class="details-container">
<div style="float:left">
<dl>
<dt>File Name:</dt>
<dd>File1.pdf</dd>
<dt>Page Count</dt>
<dd>10</dd>
</dl>
</div>
<div style="float:left">
<dl>
<dt>File Name:</dt>
<dd>File2.pdf</dd>
<dt>Page Count</dt>
<dd>10</dd>
</dl>
</div>
<div style="float:left">
<dl>
<dt>File Name:</dt>
<dd>File3.pdf</dd>
<dt>Page Count</dt>
<dd>10</dd>
</dl>
</div>
<div style="float:left">
<dl>
<dt>File Name:</dt>
<dd>File4.pdf</dd>
<dt>Page Count</dt>
<dd>10</dd>
</dl>
</div>
</div>
你應該更準確地知道你想要什麼,因爲有很多不同的方法可以實現這個目標,這取決於每個細節的每行元素數是否固定,如果你想要的話有反應能力,還是屬於固定大小元素的其他東西的一部分?如果div中的任何列表變得太大,你想要出現卷軸嗎?
這裏有一些線索:
FlexBox?
<div class="container">
<div class="left">
<div class="item">
<div class="title">Title</div>
<div class="value">Value asd asd as das d</div>
</div>
</div>
<div class="right">
<div class="item">
<div class="title">Title</div>
<div class="value">Value asd asd as</div>
</div>
<div class="item">
<div class="title">Title</div>
<div class="value">Value adasd</div>
</div>
<div class="item">
<div class="title">Title</div>
<div class="value">Value</div>
</div>
<div class="item">
<div class="title">Title</div>
<div class="value">Value</div>
</div>
<div class="item">
<div class="title">Title</div>
<div class="value">Value</div>
</div>
</div>
</div>
.container {
display: flex;
}
.item {
padding-bottom: 30px;
}
.container .left {
display: flex;
align-items: center;
padding-right: 50px;
}
.container .right {
display: flex;
width: 70%;
flex-wrap: wrap;
}
.container .right .item {
width: 30%;
}
你試過顯示:彎曲或inline-block的? –