我试图在图像的四个边上添加文字,但我无法正确对齐正确的文字。正确的文字仍在左侧。
FIDDLE:https://jsfiddle.net/y75L0ww9/
<span class="top">Text on top</span>
<span class="left">Text on left side</span>
<img src="http://www.uaa.alaska.edu/web/images/horizontal-large.jpg" />
<span class="right">Text on right side</span>
<span class="bottom">Text on bottom</span>
img {
max-width: 100%;
height: auto;
border: 0px none;
vertical-align: middle;
display:block;
margin:0 auto;
}
.top, .bottom {
display: block;
text-align: center;
margin-left: auto;
margin-right: auto;
overflow: hidden;
}
.left {
display: inline-block;
background-color: #FF0;
transform: rotate(-90deg);
position: relative;
top: 200px;
left: 0px;
}
.right {
display: inline-block;
background-color: #F00;
transform: rotate(90deg);
position: relative;
right: 0px;
bottom: 200px;
}
答案 0 :(得分:0)
( btw。在更宽的视口中,左边的文字现在也没有那么好地布置;))
您必须将所有这5个元素包装到另一个元素中,例如:
.wrapper {
display: inline-block;
position: relative;
}
有了这个,您就可以轻松地将span
内部position: absolute
与{{1}}对齐。
答案 1 :(得分:0)
你应该在你的图像周围添加包装器(现在它可以是正文),ad给它position: relative;
然后修改.right类:
.right {
display: inline-block;
background-color: #F00;
transform: rotate(90deg) translate(0, -50%);
position: absolute;
right: 0px;
top: 50%;
}
答案 2 :(得分:0)
使用position:absolute;而不是位置:相对;