我在放置图像和输入字段时遇到问题。它们以交错的方式放置。我希望它们在一条直线水平线上彼此相邻放置。您可以在下面的图片中看到问题。
HTML:
<div id="wrapper">
<!--Inbox list and button to add a card-->
<div id="inboxList" class="cellContainer">
<p style="display: inline">Inbox</p>
<!--Button to add a Card-->
<input type="button" id="AddCardBtn" value="+ Add a Card..."/>
<hr class="fancy-line"/> <br/>
<!--Card div-->
<div id="userAddedCard"> <br/>
<div>
</div>
</div>
</div>
</div>
Jquery的:
var $div = $('<div />').addClass('sortable-div');
$('<img />', { "src": "/Pages/Images/calendar.png" }).addClass('image').appendTo($div);
$('<input/>', { "type": "text", "class": "ctb" }).addClass('ctb').appendTo($div);
CSS:
.ctb {
display:inline-block;
width: 20px;
padding-left:2%;
}
.image {
display:inline-block;
height:19px;
width:19px;
padding-top:7%;
padding-left:5%;
}
答案 0 :(得分:2)
如果你的.image元素添加了vertical-align:bottom,它应该正确排列所有内容。
答案 1 :(得分:1)
请查看更新的小提琴,
<!--Card div-->
<div id="userAddedCard"> <br/>
</div>
.image {
display:inline-block;
height:19px;
width:19px;
/*padding-top:7%;
padding-left:5%;
padding-right:2%;*/
vertical-align:top;
}
干杯:)
答案 2 :(得分:1)
您只需将display: block;
应用于文字和图片,而不是display:inline-block;
.ctb {
display: block;
width: 20px;
padding-left:2%;
}
.image {
display: block;
height:19px;
width:19px;
padding-top:7%;
padding-left:5%;
}
更新了 Fiddle
答案 3 :(得分:1)
添加课程 CSS
.ctb
{
vertical-align: bottom;
padding: 0px 0px 0px 2%;
margin: 0px;
}
.image
{
vertical-align: bottom;
}
答案 4 :(得分:1)
这是我的Fiddle。更新了以下类
<强> CSS:强>
.image {
display:block;
float:left;
height:19px;
width:19px;
padding-left:5%;
margin-top: 0.4%;
}
#inboxList {
width: 275px;
height: 700px;
background-color: #f0f0f0;
border: 1px solid black;
margin-left: 0.5%;
margin-top: 0.4%;
border-radius: 10px;
box-shadow: 7px 7px 7px #828282;
overflow: auto;
display:inline-block;
}