2014-09-02 67 views
0

我想爲每兩位數字加下劃線和分隔數字。如何突出顯示用CSS列屬性創建的間隙?

這裏是我的嘗試和demo

CSS

.number { 
    width: 8em; 
    display: block; 
    word-wrap: break-word; 
    columns: 5; 
    -webkit-columns: 5; 
    -moz-columns: 5; 
    column-gap: 0.2em; 
    -webkit-column-gap: 0.2em; 
    -moz-column-gap: 0.2em; 
    text-decoration: underline; 
} 

HTML

<span class="number">0102030405</span> 

正如你可以在演示中看到,空間創造了每兩數字不加下劃線。

我該如何強調它們?

注:

我在尋找的Chrome,火狐,IE和Safari瀏覽器兼容的解決方案。

+0

實現此結果的一種方式(可能被認爲是黑客行爲)是簡單地刪除'text-decoration',而不是給它'border-bottom:1px solid black;'。 – TylerH 2014-09-02 15:58:08

+1

要麼使用'border'或'before' /'後面的元素來僞造它,要麼使用不同的方法來隔開數字。 – Nit 2014-09-02 15:58:42

+1

很想看看這可能只是CSS – uchamp 2014-09-02 15:59:15

回答

1

請注意.number上的額外position: relative
Jsfiddle

.number { 
    width: 8em; 
    display: block; 
    word-wrap: break-word; 
    columns: 5; 
    -webkit-columns: 5; 
    -moz-columns: 5; 
    column-gap: 0.2em; 
    -webkit-column-gap: 0.2em; 
    -moz-column-gap: 0.2em; 
    text-decoration: underline; 
    position: relative; 
} 

.number:before { 
    background: black; 
    bottom: 3px; 
    content: ""; 
    height: 1px; 
    left: 0; 
    position: absolute; 
    right: 0.5em; 
} 
+0

你能評論你的答案嗎?你爲什麼使用'position:relative'?是否可以在每個地方使用em而不是'px'? – Stephan 2014-09-02 16:56:38

+0

1/pseudo僅在內容屬性被設置時才存在2 /它被創建爲需要的大小3 /然後被絕對定位(定義)其最接近的祖先被定位4 /更好地是元素本身(它的「父」), position:relative' – FelipeAls 2014-09-02 17:05:27

+1

此答案僅適用於Chrome和Safari。 – TylerH 2014-09-02 17:12:23