我试图在图像中间对齐一些文本,我尝试了几种不同的垂直对齐方式,但我似乎无法让它工作。
目前,布局看起来如此:
,用于此的HTML / CSS是:
<p id="searchresults">Search Results</p>
<ul id="posted_results">
<?php
foreach($search_result['movies'] as $sr){
echo '<li class="search_item"><a href="/ug10/cs10aer/screening/movie.php?title=' . $sr['title'] . '" alt="' . $sr['title'] . ' (' . $sr['year'] . ')"><img src="' . $sr['posters']['thumbnail'] . '" title="' . $sr['title'] . ' poster" alt="' . $sr['title'] . ' poster" /></a><a href="/ug10/cs10aer/screening/movie.php?title=' . $sr['title'] . '" alt="' . $sr['title'] . ' (' . $sr['year'] . ')">' . $sr['title'] . ' (' . $sr['year'] . ')</a></li>';
}
?>
</ul>
更新 只是为了进一步指导,我想让每个列表对象的文本显示如下:
更新2 根据要求,这是Firefox看到的HTML代码:
<div id="content">
<p id="searchresults">Search Results</p>
<ul id="posted_results">
<li class="search_item"><a href="/ug10/cs10aer/screening/movie.php?title=Star Wars: Episode III - Revenge of the Sith 3D" alt="Star Wars: Episode III - Revenge of the Sith 3D (2005)"><img src="http://content8.flixster.com/movie/10/94/47/10944718_mob.jpg" title="Star Wars: Episode III - Revenge of the Sith 3D poster" alt="Star Wars: Episode III - Revenge of the Sith 3D poster" /></a><a href="/ug10/cs10aer/screening/movie.php?title=Star Wars: Episode III - Revenge of the Sith 3D" alt="Star Wars: Episode III - Revenge of the Sith 3D (2005)">Star Wars: Episode III - Revenge of the Sith 3D (2005)</a></li>
<li class="search_item"><a href="/ug10/cs10aer/screening/movie.php?title=Star Wars: Episode II - Attack of the Clones 3D" alt="Star Wars: Episode II - Attack of the Clones 3D (2002)"><img src="http://content7.flixster.com/movie/10/94/47/10944721_mob.jpg" title="Star Wars: Episode II - Attack of the Clones 3D poster" alt="Star Wars: Episode II - Attack of the Clones 3D poster" /></a><a href="/ug10/cs10aer/screening/movie.php?title=Star Wars: Episode II - Attack of the Clones 3D" alt="Star Wars: Episode II - Attack of the Clones 3D (2002)">Star Wars: Episode II - Attack of the Clones 3D (2002)</a></li>
<li class="search_item"><a href="/ug10/cs10aer/screening/movie.php?title=Star Wars: Episode IV - A New Hope" alt="Star Wars: Episode IV - A New Hope (1977)"><img src="http://content9.flixster.com/movie/10/94/47/10944715_mob.jpg" title="Star Wars: Episode IV - A New Hope poster" alt="Star Wars: Episode IV - A New Hope poster" /></a><a href="/ug10/cs10aer/screening/movie.php?title=Star Wars: Episode IV - A New Hope" alt="Star Wars: Episode IV - A New Hope (1977)">Star Wars: Episode IV - A New Hope (1977)</a></li>
<li class="search_item"><a href="/ug10/cs10aer/screening/movie.php?title=Star Wars: Episode VI - Return of the Jedi" alt="Star Wars: Episode VI - Return of the Jedi (1983)"><img src="http://content7.flixster.com/movie/10/94/47/10944709_mob.jpg" title="Star Wars: Episode VI - Return of the Jedi poster" alt="Star Wars: Episode VI - Return of the Jedi poster" /></a><a href="/ug10/cs10aer/screening/movie.php?title=Star Wars: Episode VI - Return of the Jedi" alt="Star Wars: Episode VI - Return of the Jedi (1983)">Star Wars: Episode VI - Return of the Jedi (1983)</a></li>
</ul>
</div>
答案 0 :(得分:1)
从图像中移除浮动并使用vertical-align:
.search_item img {
vertical-align: middle;
margin-right: 30px;
}
答案 1 :(得分:0)
如果图像总是相同的高度+描述长度总是相似的,你可以使用行高或/和margin-top来破解它,或者使用vertical-align在image eample上使用vertical-align在这里:https://stackoverflow.com/a/13780959/1134615
使用行高的简单小提琴:
HTML
<ul>
<li>
<img src=""/>
<p>Sample text</p>
</li>
</ul>
CSS
ul {
height: 120px;
width: 600px;
outline: red 1px solid;
}
img {
height: 120px;
width: 120px;
float: left;
}
p {
height: 120px;
line-height: 120px;
}
答案 2 :(得分:0)
您可以在图像中添加vertical-align:middle。
li img {
vertical-align:middle;
padding-right:10px;
}
检查这个jsfiddle,看看它是不是你想要的。 http://jsfiddle.net/3ETDj/
对我而言,它适用于Firefox,IE8,Chrome和Opera。