发布网友 发布时间:2022-04-22 17:58
共1个回答
热心网友 时间:2022-04-06 15:08
1、将对应的大图小图存放在同一个li标签中(鼠标悬浮到小图时,方便定位到大图)。
2、内部样式中利用"display:none;"隐藏大图所在div。
3、鼠标悬浮到相应区域时,修改同li标签下大图所在div的display属性("display:block")。
小结:1、最上层的div必须定位,否则无法约束子元素。
2、li标签设置浮动时,图片会重叠,无法排成一列。浮动必须落实到图片。
3、小照片放在span标签中,变成了内联元素。需为其添加"display: block;"转换为块级元素,才能设置图片外边距.
以下是代码:
[html] view plain copy
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title></title>
<style>
*{
margin: 0px;
padding: 0px; }
/*相框背景*/
#all{
width: 800px;
height: 800px;
background: greenyellow;
position: relative;
/*父元素必须定位,否则无法约束子元素*/
}
/*相册大图*/
#all ul li .big img{
width: 500px;
height: 400px;
}
#all ul li .big{
position: absolute;
left: 70px;
top: 130px;
display: none;/*内部样式中隐藏大图所在div*/
}
/*小图设置*/
#all ul li .smallhover img{
width: 70px;
height: 50px;
position: absolute;
right: 100px;
float: left;/*设置浮动,可使图片排成一列*/
}
#all ul li .smallhover{
/*因为小照片放在span标签中,变成内联元素。设置display: block;将其转换为块级元素,才能设置图片外边距*/
display: block;
margin-top: 40px;
overflow: hidden;
}
/*实现效果,鼠标悬浮在小图片时,相应的大图片显示*/
#all ul li:hover .big{
display: block;
}
</style>
</head>
<body>
<div id="all">
<ul>
<li>
<!--小图-->
<span class="smallhover"><img src="img/lotus1.jpg" /></span>
<!--大图-->
<div class="big" style="display: block;" >
<!--设置初始图片-->
<img src="img/lotus1.jpg" />
</div>
</li>
<li>
<span class="smallhover"><img src="img/lotus2.jpg" /></span>
<div class="big"><img src="img/lotus2.jpg" /></div>
</li>
<li>
<span class="smallhover"><img src="img/lotus3.jpg" /></span>
<div class="big"><img src="img/lotus3.jpg" /></div>
</li>
</ul>
</div>
</body>
</html>