2011-10-06 48 views
1

我有一個無序的鏈接列表,每個鏈接都包含一些文本和span元素。垂直居中與背景圖像的跨度

<li class="ui-state-default"><a href="#pg-control">Control<span class="ui-icon ui-icon-right_arrow"></span></a></li> 

我想的圖標垂直居中相出現在李(內嵌文字)

enter image description here

這裏是我的CSS

li { 
    line-height: 240%; 
    display: block; 
    border-bottom: 1px solid #666; 
    padding: 5px; 
} 

li a { 
    text-decoration: none; 
    color: #000; 
    display: block; 
} 

.ui-icon { 
    width: 24px; 
    height: 24px; 
    float: right; 
    display: inline-block; 
} 

注意我我不使用jQuery,我意識到我的類名是相同的。這僅僅是巧合。

回答

4

你可以移動圖標是李的背景,或:

給出li相對定位,然後給圖標絕對定位。將圖標從頂部放置50%,然後減去圖標高度的上半部分。這將使圖標垂直居中。

li { 
    position: relative; 
    line-height: 240%; 
    display: block; 
    border-bottom: 1px solid #666; 
    padding: 5px; 
} 

li a { 
    text-decoration: none; 
    color: #000; 
    display: block; 
} 


.ui-icon { 
    position: absolute; 
    top: 50%; 
    right: 10px; 
    margin-top: -12px 
    width: 24px; 
    height: 24px; 
    display: inline-block; 
} 
+0

你的解決方案適用於我目前的CSS和標記。 +1 – rlemon

3

如果是我,我會做的箭頭li有點像background-image

li{ 
    background:transparent url(the_arrow.jpg) no-repeat center right; 
} 

I've coded an example...

+0

我喜歡你的解決方案,但我怎麼會得到這個與精靈表一起工作? – rlemon

+0

嗯,你沒有提到精靈表。你必須更具體地說明'right 17px'的位置,例如... – Alex