2014-01-21 143 views
0

我使用的是託管的購物車軟件,這意味着我對使用HTML能做的限制(我無法編輯HTML,但可以添加新的CSS樣式和JavaScript)。DIV中的垂直中心文本

什麼我想是垂直對齊下面的鏈接文字(記住,HTML是硬編碼):

<div id="ct_sc_listing"> 
<div class="ct_sc_listing_cat"> 
<div class="ct_sc_listing_cat_name"><a href="#">Link Text</a></div> 
</div> 
</div> 

這是我使用的CSS代碼:

<style type="text/css"> 

#ct_sc_listing 
    { 
    margin: 0px; 
    padding: 0px; 
    float: left; 
    width: 100%; 
    } 

.ct_sc_listing_cat { 
    position: relative; 
    width: 150px; 
    font-family: "Helvetica Neue", Helvetica, Arial, sans-serif; 
    color: #336; 
    font-size: 24px; 
    text-decoration: none; 
    background-color: #DFEBEB; 
    text-align: center; 
    float: left; 
    display: inline-block; 
    padding: 5px; 
    height: 150px; 
    margin-top: 5px; 
    margin-right: 5px; 
    margin-bottom: 5px; 
    margin-left: 0px; 
} 

.ct_sc_listing_cat a:link { 
    font-family: "Helvetica Neue", Helvetica, Arial, sans-serif; 
    color: #006; 
    font-size: 24px; 
    text-decoration: none; 
    position: absolute; 
    width: 100%; 
    height: 100%; 
    top: 0; 
    left: 0; 
    text-decoration: none; /* No underlines on the link */ 
    z-index: 10; /* Places the link above everything else in the div */ 

} 

.ct_sc_listing_cat:visited, .ct_sc_listing_cat a:visited { 
    font-family: "Helvetica Neue", Helvetica, Arial, sans-serif; 
    color: #006; 
    font-size: 24px; 
    text-decoration: none; 
} 

.ct_sc_listing_cat:hover, .ct_sc_listing_cat:hover a{ 
    background-color: #006; 
    font-family: "Helvetica Neue", Helvetica, Arial, sans-serif; 
    color: #DFEBEB; 
    font-size: 24px; 
    text-decoration: none; 
} 
.ct_sc_listing_cat:active, .ct_sc_listing_cat a:active { 
    font-family: "Helvetica Neue", Helvetica, Arial, sans-serif; 
    color: #FFF; 
    font-size: 24px; 
} 

</style> 

無論如何,使用CSS或JavaScript,我可以垂直對齊文本?

編輯:我要補充的是,行高的方法是行不通的,因爲鏈接文本是動態的,可能跨越一個或2線

我有一個想法,它可能以封閉使用JavaScript在DIV中鏈接文本,然後使用CSS來設置樣式並垂直對齊文本。我不知道該怎麼做,所以任何想法都會受到歡迎!

我知道它好像很多CSS代碼,但我設置了鏈接,以便DIV可點擊。

在此先感謝!

+0

,你可以做一個http://jsfiddle.net這些細節?將使它更容易可視化和編輯! – msturdy

+0

當然 - http://jsfiddle.net/6kZE2/ – user3220812

+0

http://jsfiddle.net/6kZE2/1/ – user3220812

回答

0

大一篇文章,談論的最佳途徑之一,以通過CSS垂直對齊文本:

http://zerosixthree.se/vertical-align-anything-with-just-3-lines-of-css/

+0

我設法讓這個工作使用安德魯的方法[鏈接] http://jsfiddle.net/ 6kZE2/2/[鏈接],但現在div不再可點擊(只有文本是)。任何想法如何解決這個問題? – user3220812

+0

適當的JSFiddle鏈接:http://jsfiddle.net/6kZE2/2/ –

+0

使div可點擊的唯一方法是將其封裝在錨標籤中。 我想你在這裏試圖做的是風格的鏈接,以便它應該看起來特定的方式,但也可點擊。如果是這樣的話,你應該採取不同的方法。 –

0

看看他的CSS屬性display:tablevertical-align:middle。此外,您還重複了很多樣式聲明......例如,font-family聲明只需要寫入.ct_sc_listing_cat類。