我有一个div #main
,其中包含可变或更大尺寸的图像。我想在它的右上角放一个关闭按钮,使用负边距延伸出div。
我在我的overflow:hidden
div上使用#main
来阻止主图像延伸到div之外。但这也是剪辑我的关闭按钮。
我有以下html:
<div id="container">
<div id="main">
<div id="close">x</div>
<img src="http://lorempixel.com/300/300" />
</div>
</div>
以下CSS:
#container{
background:#555;
height:100%;
width:100%;
overflow:hidden;
}
#main{
position:relative;
width:100px;
height:200px;
margin:50px;
display:block;
overflow:hidden;
}
#close{
background:#069;
height:30px;
width:30px;
background:#fff;
position:absolute;
top:0px;
right:0px;
margin:-10px -10px 0 0;
}
这是一个小提琴:http://jsfiddle.net/zFjdf/你可以看到关闭被剪掉了。
我希望完全关闭按钮,而不会让#main
的图像伸展出来。
答案 0 :(得分:2)
您可以将#main
的内容包含在div
设置为overflow
的其他hidden
中,其中包含以下内容:
<div id="main">
<div id="close">x</div>
<div class="wrap">
<img src="http://lorempixel.com/300/300" />
</div>
</div>
并在CSS中:
.wrap {
width:100%;
height:100%;
overflow:hidden;
}
并删除overflow
属性表单#main
。
此外,对于#close
框,您可以使用padding
代替width
/ heignt
来使X居中。您应该考虑使用class
代替id
来应用样式,尤其是当您计划在同一页面上多次出现main
元素时。