2013-10-30 88 views
2

我有以下樣式提交按鈕文字陰影,但不能刪除線

<input type="submit" id="addToCart" value="Add to cart">

text-shadow: 
3px 3px 0 #000, 
-1px -1px 0 #000, 
1px -1px 0 #000, 
-1px 1px 0 #000, 
1px 1px 0 #000; 
text-decoration: line-through; 

但問題是,刪除線有文字陰影了。有沒有辦法將它分開,以便文本具有陰影而不是刪除線?

FIDDLE:http://jsfiddle.net/cxJ4a/

回答

3

當一切都失敗了,欺騙像瘋了似的。

#addToCart { 
    position: relative; 
} 

#addToCart:before { 
    content: ''; 
    display: block; 
    position: absolute; 
    height: 0; 
    left: 0; 
    right: 0; 
    margin-top: 0.5em; 
    border-top: 1px solid white; 
} 

您可能需要保證金和邊框搗鼓佔按鈕,填充線高度等

編輯:請注意,這不符合<input>工作,因爲它是一個替換元素...但它確實<button>一起工作,這是一個或多或少普通的HTML容器。

+0

你能解釋一下嗎? – cameronjonesweb

+0

當然,對不起。它使用':before'僞元素,它通常只是出現在「真實」元素之前的一些文本,但在這種情況下是沒有高度和實心水平邊框的塊。你最終會得到一條穩固的白線,而不需要額外的標記。 – Eevee

+0

它似乎並沒有工作,我在這裏設置了一個小提琴:http://jsfiddle.net/cxJ4a/ – cameronjonesweb