我正试图将文字置于横幅图像上。
这是一个jsfiddle。
https://jsfiddle.net/c6Lcr0ap/
HTML:
<div class="about-me">
<div class="about-me__banner">
<div class="about-me__banner-text">
<h3>About Me</h3>
</div>
<div class="about-me__banner-image">
<img src="https://i.imgur.com/qiUWxdd.png">
</div>
</div>
</div>
CSS:
h3 {
color: orange;
}
答案 0 :(得分:1)
.about-me__banner{
position:relative;
text-align:center;
}
.about-me__banner-text{
position:absolute;
width:100%;
color: orange;
}
&#13;
<div class="about-me">
<div class="about-me__banner">
<div class="about-me__banner-text">
<h3>About Me</h3>
</div>
<div class="about-me__banner-image">
<img src="https://i.imgur.com/qiUWxdd.png">
</div>
</div>
</div>
&#13;
答案 1 :(得分:1)
这样做很简单。
首先,您需要将文本容器.about-me__banner-text
相对于其父.about-me__banner
进行绝对定位,以便它可以保留在您的图像上。
然后,您可以使用flexbox将.about-me__banner
内的所有内容纵向和横向居中,从而产生以下新规则:
.about-me__banner {
position: relative;
display: flex;
align-items: center;
justify-content: center;
}
.about-me__banner-text {
position: absolute;
}
这应该可以解决问题。 You can check your modified fiddle here.
答案 2 :(得分:0)
.about-me {
text-align:center;
}
&#13;
答案 3 :(得分:0)
答案 4 :(得分:0)
如果你有一个固定的高度,那么你有另一个解决方案:
.about-me__banner-text {
background-image: url("https://i.imgur.com/qiUWxdd.png");
background-repeat: no-repeat;
background-position: center;
height: 57px;
line-height: 57px;
text-align: center;
}
这是jsfiddle:https://jsfiddle.net/01h8tqcc/
更新
分割这样的样式可能更好:
.about-me__banner {
background-image: url("https://i.imgur.com/qiUWxdd.png");
background-repeat: no-repeat;
background-position: center;
}
.about-me__banner-text {
height: 57px;
line-height: 57px;
text-align: center;
}
jsfiddle:https:https://jsfiddle.net/01h8tqcc/1/