我在span标签内有一个图像,span有一个设置的宽度和高度,并设置为隐藏溢出.所以它只显示了一小部分图像.这可以工作,但可见的图像的一小部分是左上角.我希望它是可见的图像的中心.我想我需要绝对定位图像,但图像的大小可能会有所不同.有谁知道怎么做我想做的事情?
谢谢!
这是HTML:
<div class="lightbox_images">
<h6>Alternate Views</h6>
<span>
<a href="http://www.kranichs.com/mothers_rings/mothers_rings_txt2.jpg" rel="lightbox[product_alternate_views]" title="This is my captions 1">
<img src="http://www.kranichs.com/mothers_rings/mothers_rings_txt2.jpg" />
</a>
</span>
<span>
<a href="https://www.kranichs.com/product_images/Simon-G@346_M_346_M.jpg" rel="lightbox[product_alternate_views]" title="This is my captions 2">
<img src="https://www.kranichs.com/product_images/Simon-G@346_M_346_M.jpg" />
</a>
</span>
<span>
<a href="http://www.kranichs.com/images/simong/sim_banner_01.jpg" rel="lightbox[product_alternate_views]" title="This is my captions 3">
<img src="http://www.kranichs.com/images/simong/sim_banner_01.jpg" />
</a>
</span>
<span>
<a href="http://www.kranichs.com/images/psu/psu_banner.jpg" rel="lightbox[product_alternate_views]" title="This is my captions 4">
<img src="http://www.kranichs.com/images/psu/psu_banner.jpg" />
</a>
</span>
</div>
Run Code Online (Sandbox Code Playgroud)
这是CSS:
.lightbox_images{
background-color:#F9F9F9;
border:1px solid #F0F0F0;
}
.lightbox_images h6{
font-family:Verdana, Arial, Helvetica, sans-serif;
color:#333333;
font-size:14px;
font-weight:bold;
font-style:italic;
text-decoration:none;
margin:0px;
}
.lightbox_images span{
padding:5px;
padding-bottom:15px;
background-color:#DFDFDF;
margin:5px;
display:inline-block;
border:1px solid #CCC;
}
.lightbox_images a{
display:inline-block;
width:60px;
height:60px;
overflow:hidden;
position:relative;
}
.lightbox_images a img{
position:absolute;
left:-50%;
top:-50%;
}
.lightbox_images span:hover{
border:1px solid #BBB;
background-color:#CFCFCF;
}
Run Code Online (Sandbox Code Playgroud)
Kri*_*Dev 28
正如Billy Moat 在/sf/answers/1038656321/中提出的那样,有一种解决方案,但不知道图像的高度和宽度.
在这里试试:http://jsfiddle.net/LSKRy/
<div class="outer">
<div class="inner">
<img src="http://3.bp.blogspot.com/-zvTnqSbUAk8/Tm49IrDAVCI/AAAAAAAACv8/05Ood5LcjkE/s1600/Ferrari-458-Italia-Nighthawk-6.jpg" alt="" />
</div>
</div>
.outer {
width: 300px;
overflow: hidden;
}
.inner {
display: inline-block;
position: relative;
right: -50%;
}
img {
position: relative;
left: -50%;
}
Run Code Online (Sandbox Code Playgroud)
Ron*_*era 17
鉴于这种HTML:
<span><img src="..." width="..." height="..." alt="..." /></span>
Run Code Online (Sandbox Code Playgroud)
您可以像这样使用CSS:
span {
position: relative;
display: block;
width: 50px; /* Change this */
height: 50px; /* Change this */
overflow: hidden;
border: 1px solid #000;
}
span img {
position: absolute;
left: -10px; /* Change this */
top: -10px; /* Change this */
}
Run Code Online (Sandbox Code Playgroud)
然后,您可以根据图像的确切尺寸使图像居中.
或者,如果您能够修改HTML,则可以改为使用以下内容:
<div>
<a href="...">[name of picture]</a>
</div>
Run Code Online (Sandbox Code Playgroud)
然后,将它与此CSS匹配:
div {
width: 50px;
height: 50px;
background: transparent url(...) center center no-repeat;
border: 1px solid #000;
}
div a {
display: block;
height: 100%;
text-indent: -9999em; /* Hides the link text */
}
Run Code Online (Sandbox Code Playgroud)
在这种情况下,背景将自动居中,无论其尺寸如何,它仍然是可点击的.