我看到很多类似的问题和答案,但没有什么和我想要实现的一样。
这是我的HTML:
<div class="container">
<div class="inner">
<div class="image-container">
<img src="http://fpoimg.com/600x300" alt=""/>
<a href="" class="close-link">x</a>
</div>
<div>image name</div>
<div>id: 123456</div>
</div>
和CSS:
* {
font-family: sans-serif;
}
.container {
position: relative;
border: 1px solid;
width: 500px;
height: 500px;
}
img {
max-height: 100%;
max-width: 100%;
position: absolute;
top: 0;
bottom: 0;
left: 0;
right: 0;
margin: auto;
}
.close-btn {
position: absolute;
background: red;
padding: 4px 8px;
border-radius: 50%;
color:white;
text-decoration: none;
}
请在此处查看jsfiddle - https://jsfiddle.net/61afw70q/10/
我需要做的是将红色十字按钮放在IMAGE的右上角。注意 - 我不想把它放在容器的右上角。我想要它的形象。每张图片的大小都不同。图像集中在容器内。
这是我整个页面的高度精简版本。
答案 0 :(得分:1)
你真的不需要inner
div ...你将图像放在容器中,所以也不需要定位图像。
* {
font-family: sans-serif;
}
.container {
position: relative;
border: 1px solid;
width: 500px;
display: flex;
padding: 15px;
flex-direction: column;
}
.image-container {
position: relative;
display: inline-block;
}
img {
max-height: 100%;
width: 100%;
}
.close-btn {
position: absolute;
background: red;
top: 4px;
right: 4px;
padding: 4px 8px;
border-radius: 50%;
color: white;
text-decoration: none;
}
a.close-link {
position: absolute;
background: red;
width: 1.5em;
height: 1.5em;
text-align: center;
line-height: 1.5em;
border-radius: 50%;
color: white;
text-decoration: none;
top: 4px;
right: 4px;
}
&#13;
<div class="container">
<div class="image-container">
<img src="http://fpoimg.com/600x300" alt="" />
<a href="" class="close-link">x</a>
</div>
<div>image name</div>
<div>id: 123456</div>
</div>
&#13;