这是我的JsFiddle
我是CSS新手。我正在尝试创建一个图库。我使用table
tr
td
标记设计了布局。
这是我的HTML代码:
<div class="gallery">
<table>
<tr>
<td> <img class="normalimage" src=""> </td>
<td> <img class="wideimage" src=""> </td>
<td> <img class="normalimage" src=""> </td>
<td> <img class="normalimage" src=""> </td>
<td> <img class="wideimage" src=""> </td>
<td> <img class="normalimage" src=""> </td>
<td> <img class="normalimage" src=""> </td>
<td> <img class="wideimage" src=""> </td>
<td> <img class="normalimage" src=""> </td>
<td> <img class="normalimage" src=""> </td>
<td> <img class="wideimage" src=""> </td>
<td> <img class="normalimage" src=""> </td>
</tr>
<tr>
<td> <img class="normalimage" src=""> </td>
<td> <img class="normalimage" src=""> </td>
<td> <img class="wideimage" src=""> </td>
<td> <img class="normalimage" src=""> </td>
<td> <img class="normalimage" src=""> </td>
<td> <img class="wideimage" src=""> </td>
<td> <img class="normalimage" src=""> </td>
<td> <img class="normalimage" src=""> </td>
<td> <img class="wideimage" src=""> </td>
<td> <img class="normalimage" src=""> </td>
<td> <img class="normalimage" src=""> </td>
<td> <img class="wideimage" src=""> </td>
</tr>
</table>
</div>
这是我的css:
.gallery {
background-color: #abcdef;
width:355px;
height: 265px;
overflow-x: scroll;
}
.gallery img {
display: block;
margin-left: 20px;
margin-top: 20px;
}
.normalimage {
height: 80px;
width: 50px;
border: 5px solid black;
}
.wideimage {
height: 80px;
width: 130px;
border: 5px solid black;
}
问题:在第二行中,我希望第三张图像出现在距离为20px的第二张图像之后。
答案 0 :(得分:1)
这里不需要表格。只需将图像包裹在每行<div>
行中,如下所示:
<div class="gallery">
<div class="row">
<img class="normalimage" src="">
<!-- more images -->
</div>
<div class="row">
<img class="normalimage" src="">
<!-- more images -->
</div>
</div>
像这样调整你的CSS:
.gallery .row {
white-space: nowrap;
}
.gallery img {
display: inline-block;
/* other properties */
}
答案 1 :(得分:0)
我不确定我理解你的问题,但也许这就是你想要的:
创建一个名为newClass
的类,并为其创建一个margin-left
属性。
同时提供!important
标记,以便浏览器知道这优先于其他规则。