cssdl-dt-dl使图片下面文字居中dt为图,dd为文字说明。效果:文字在图片下方居中;假设有8张图,要求排成两行。
dt为图,dd为文字说明。
效果:文字在图片下方居中;假设有8张图,要求排成两行。
方法之一如下:
图片及图片说明.html 文件代码如下:
<!doctype html>
<html lang="zh">
<head>
<meta charset="utf-8">
<title>图片及图片说明</title>
<link href="20130920img.css" rel="stylesheet">
</head>
<body>
<dl>
<li><p class="marginright"><img class="img" src="1.jpg" alt="这是一张关于X1的图片">图片一</p></li>
<li><p class="marginright"><img class="img" src="2.jpg" alt="这是一张关于X2的图片">图片二</p></li>
<li><p class="marginright"><img class="img" src="3.jpg" alt="这是一张关于X3的图片">图片三</p></li>
<li><p><img class="img" src="4.jpg" alt="这是一张关于X4的图片">图片四</p></li>
<li><p class="marginright"><img class="img" src="5.jpg" alt="这是一张关于X5的图片">图片五</p></li>
<li><p class="marginright"><img class="img" src="6.jpg" alt="这是一张关于X6的图片">图片六</p></li>
<li><p class="marginright"><img class="img" src="7.jpg" alt="这是一张关于X7的图片">图片七</p></li>
<li><p><img class="img" src="8.jpg" alt="这是一张关于X8的图片">图片八</p></li>
</dl>
</body>
</html>
img.css 文件代码如下:
body {
background: #fff;
margin: 0 auto;
}
dl {
margin: 0 24px;
padding: 10px;
width: 920px; /* 这是关键行,控制列表总宽度 */
}
dl li {
list-style-type: none; /* 去掉列表前的点 */
display: inline; /* 这是关键行,使列表变成内联 */
float: left; /* 这是关键行,使内联的列表元素全部左浮动 */
}
dl li p .img {
width: 200px; /* 这是关键行,控制图片宽度 */
height: 200px;
display: block; /* 这是关键行,把内联图片变成块级盒模型 */
margin-bottom: 5px; /* 为块级盒模型图片添加5px下外边距 */
}
dl li p {
text-align: center; /* 这是关键行,控制文字居中 */
}
dl li p.marginright {
margin-right: 40px; /* 这是关键行,控制1 2 3 5 6 7图片右外边距宽度 */
text-align: center;
} 你的问题困难在于HTML中为 <dl/> 列表 中的 <li/>添加合适的标签<p/>把<li/>中的<img/>和文字包裹起来。这样HTML就足够结构化。
CSS中,主要解决三个问题。
1. 控制好<dl/>列表的总宽度,及各幅图片的宽度,图片1 2 3 5 6 7的右外边距,就会自动换行。
1.1<dl/>左右外边距24px ,边框默认为0 , 内边距10px,宽920px,总宽988px;
1.2图片1 2 3 4每幅图片宽200px(高200px), 包含图片1 2 3的<p/>每个外右边距是40px,第一 行总宽920px,<dl/>的总宽920px,所以到这里放不下图片,会自动换行。
1.3图片5 6 7 8每幅图片宽200px(高200px), 包含图片5 6 7的<p/>每个外右边距是40px,第二 行总宽920px,<dl/>的总宽920px,这是第二行。
2. 用 display:inline; 使<dl/><li/>变成内联显示,再加上 float:left; 所有的<li/>就浮动起来成为一行,但是因为以上1,我们控制了宽度,使得内联的<li/>到了固定宽度就换行。
3. 再用display:block; 把包含“<img/>文字”的<p/>变成块级盒模型,那么文字就会显示在图片的下方,再给<p/>加上 text-align:center; 文字就居中了。
花被在花芽中排列方式为一片完全在外,另一片或两片完全在内,此为()排列。A.镊合状B.旋转状C.覆瓦 2020-05-25 …
站3排多2个站4排多3个站5排多4个问:一共多少人?求解…T^T站3排多2个站4排多3个站5排多4 2020-06-11 …
spss中,排序后,如何对两组均值做独立样本t检验排序后,按得分十分位数D3和D7将总体分为三部分 2020-07-09 …
制作临时装片的步骤一般是“①染色②撕取实验材料③擦拭载盖玻片④盖盖玻片⑤在载玻片中央滴清水⑥将实验 2020-07-10 …
练习徒手切片时,要用手捏紧两片并排的刀片,目的是()A.使切下的材料足够薄B.防止刀片划伤其他同学 2020-07-12 …
5X5的卡片中,填入1-75的随机数字,共200张卡片,使每张每横竖斜的排列都是唯一的比如第一张第一 2020-10-31 …
设T是完全二叉树,T中有m条边和t片树叶,证明:m=2(t-1) 2020-11-01 …
蒙泰5.0请问里面的靠齐与分布,这个功能怎么用啊,我见过有人点了几下就可把一堆照片排列整齐,就是点了 2020-11-02 …
有7张卡片,上面分别写着1,2,3,4,5,6,8.从这7张卡片中选出尽可能多的卡片,排成一个尽可能 2020-12-23 …
有四张分别标有数字1234的红色卡片和四张分别标有数字1234的蓝色卡片从这八张卡片中取出四张卡片排 2020-12-23 …