我发现了一些 css 可以让您在悬停时放大图像,并且在大多数情况下效果很好。
我的问题是我一直在处理特定尺寸的所有图像,它对他们来说效果很好,现在我在另一个页面上,有两种不同的尺寸,所以我必须制作另一个 css 类。
jsFiddle 的播放方式与我的网站不同......但它可以更好地可视化我的问题。
图像上方的部分,白色框,似乎与图像大小直接相关。我有所有短宽度和长图像,所以很好,但现在我正在处理更宽的图像,并且不喜欢跨越整个图像的框。所以如果我在这部分设置宽度为 300px
ul.enlarge2 span {
position:absolute;
height:10px;
width:300px;
}
图像将以所需大小显示。我希望它不大于 100,并以图像为中心。有任何想法吗?
这是CSS:
ul.enlarge2 {
list-style-type:none;
/*remove the bullet point*/
margin-left:0;
}
ul.enlarge2 li {
display:inline-block;
/*places the images in a line*/
position: relative;
z-index: 0;
/*resets the stack order of the list items - later we'll increase this*/
margin:5px 10px 0 10px;
}
ul.enlarge2 img {
background-color:#eae9d4;
padding: 6px;
-webkit-box-shadow: 0 0 6px rgba(132, 132, 132, .75);
-moz-box-shadow: 0 0 6px rgba(132, 132, 132, .75);
box-shadow: 0 0 6px rgba(132, 132, 132, .75);
-webkit-border-radius: 4px;
-moz-border-radius: 4px;
border-radius: 4px;
}
ul.enlarge2 span {
position:absolute;
height:10px;
width:100px;
left: -9999px;
background-color:white;
padding: 10px;
font-family:'Droid Sans', sans-serif;
font-size:.9em;
text-align: center;
color: transparent;
-webkit-box-shadow: 0 0 20px rgba(0, 0, 0, .75));
-moz-box-shadow: 0 0 20px rgba(0, 0, 0, .75);
box-shadow: 0 0 20px rgba(0, 0, 0, .75);
-webkit-border-radius: 8px;
-moz-border-radius: 8px;
border-radius:8px;
}
ul.enlarge2 li:hover {
z-index: 150;
cursor:pointer;
}
ul.enlarge2 span img {
padding:2px;
background:#ccc;
}
ul.enlarge2 li:hover span {
top: 100px;
/*the distance from the bottom of the thumbnail to the top of the popup image*/
left: 0px;
/*distance from the left of the thumbnail to the left of the popup image*/
}
ul.enlarge2 li:hover:nth-child(2) span {
left: -200px;
}
ul.enlarge2 li:hover:nth-child(3) span {
left: -200px;
}
ul.enlarge2 img, ul.enlarge span {
behavior: url(pie/PIE.htc);
}