【发布时间】:2014-12-29 19:12:29
【问题描述】:
我正在尝试对齐图像底部的“关于”文本。红线表示我要在底部对齐的文本中的位置。但是,当我在桌面和移动上尝试时,无论我尝试什么,都会产生不一致的结果。它目前可以在我的笔记本电脑上运行,您可以在此处查看它http://theoddler.github.io/(单击图像以“打开”幻灯片。)
这就是 html 的样子:(它托管在 github,所以我使用的是液体标签)
<div class="slide_title">
<span>{{ include.title }}</span>
</div>
<div class="slide_heading clickable">
<img src="{{ include.image }}" width="100%" alt="{{ include.title }}"/>
</div>
CSS:
.slide .slide_title {
font-size: 4.938em;
color: #f8f8f8;
font-weight: bold;
font-family: Arial, Helvetica, sans-serif;
margin: 0;
pointer-events:none;
position: absolute;
left: 0.000em;
top: 14.188em; /*some default when no javascript is used, otherwise set in js*/
}
.slide .slide_title span {
position: absolute;
bottom: -0.24em;
white-space: nowrap;
text-shadow: 0 0 0.05em #999999;
}
文本在一个 div 中,带有 css position: absolute,我将它的 div 与我的图像放在一起(所以 div 的底部正确地定位在图像的底部,这就是它应该的样子)。但是现在我正在尝试正确定位 div 中的文本。
我尝试的所有结果都不一致。它会在我的桌面上完美定位,但在移动设备上会有不同的偏移量。
我尝试了什么(我记得,尝试了很多):
- 我尝试在我的脚本中给 div 一个固定的偏移量来定位它。
- 我尝试更改 div 的高度,以便根据需要移动文本。
- 然后我尝试将文本放在 div 内的 span 中,并通过将其设置为
bottom来移动 span。这是目前的情况,也是我最接近的情况,在我尝试过的所有地方都被平均抵消。
我也尝试将div的垂直对齐设置为底部,但文本根本没有移动。
有没有一致的方法来对齐这样的文本?所以它可以在任何地方工作吗?
谢谢!
注意:我使用 jquery 来定位 div。
【问题讨论】:
-
请发布您的代码。
-
您尝试
display: table-cell并添加vertical-align: bottom了吗? -
@j 08691 我会用一些代码来编辑它。 @lolbas 刚刚做了,没用 :(
-
@TheOddler 我不太确定,但使用萤火虫并将
top: 290px设置为element.style做了你想要的 -
@lolbas,是的,我可以设置顶部以便它在我的笔记本电脑上工作,但是当我在手机上打开它时,它的位置不正确。我尝试的所有东西都正确定位它,但只在我的笔记本电脑上而不是在我的手机上。我可以为我的手机正确定位它,但在我的笔记本电脑上它就不正确了。我正在寻找方法,所以它在任何地方都是一致的。