【发布时间】:2016-09-15 13:51:00
【问题描述】:
我正在使用 Rails 构建一个事件应用程序。在我的索引页面上,每个事件都由相关图像表示,事件标题和日期在其上转换。像这样——
理想情况下,我希望用户为他们的活动输入一个“直截了当”/“简洁”的标题,但是我没有真正的方法可以控制它,我也不想这样做。当我尝试输入过长的标题时,会发生这种情况 -
我需要文本流动并且标题(和日期)绝对居中在图像的中间。此刻它打破(如下所示)并紧贴左边。这是我的相关代码目前有 -
events.index.html.erb
<ul>
<% @events.each do |event| %>
<li class="events">
<%= link_to (image_tag event.image.url), event, id: "image" %>
<div class="text">
<h2><%= link_to event.title, event %></h2>
<h3><%= link_to event.date.strftime('%A, %d %b %Y'), event %></h3>
</li>
<% end %>
</div>
</ul>
events.css.scss
li.events {
width: 350px;
height: 350px;
float: left;
margin: 20px;
list-style-type: none;
position: relative;
}
li.events img {
width: 100%;
height: 100%;
border-radius: 20px;
}
div.text {
padding: 25px;
position: absolute;
top: 100px;
left: auto;
}
div.text a {
text-decoration: none;
color: #FF69B4;
font-weight: bolder;
padding: 5px;
border-radius: 10px;
background-color: rgba(255,255,255,.8);
-webkit-backdrop-filter: invert(10px);
margin: 0 auto;
text-align: center;
}
我正在使用引导 gem,但不确定这是否与此问题相关。感谢您提供任何帮助。
【问题讨论】:
-
尝试将
text-align:center;添加到div.text。 -
这还不够。对于突然中断的长标题,我仍然感到奇怪的重叠,有些标题居中,有些则没有。不知道为什么...
-
你试过设置
height / line-height吗?我看到重叠只出现在标题中,所以line-height可以解决它。 -
不,我没有,我在哪里设置?我认为这更多地与文本流有关,我错了吗?
-
逻辑上应该设置为
div.text a,但以防万一你也可以在此之后尝试div.text。我想这与这样一个事实有关,即当文本转到另一行时,它不“知道”有一个填充(因为它在同一个标签内)并且直接位于字母下方。我不是大师,但应该是这样的。
标签: html css ruby-on-rails twitter-bootstrap ruby-on-rails-4