2013-12-13 71 views
3

我有一些CSS類是這樣的:輸入值

.ft-*{ 
    font-size: .*px; 
} 

反正每當我打電話類似<div class="ft-16">hello</div>某些屬性,如字體大小的變化,以16來定義的CSS?我的意思是可以輸入一些東西,而不是* mark like number,..?

回答

6

不可以,CSS不支持。使用CSS預處理器語言(例如LESSSASS)來實現這種功能。

+4

確實。使用'LESS'的循環功能可以很容易地完成:http://blog.thehippo.de/2012/04/programming/do-a-loop-with-less-css/ –

1

您可以使用JS來查找和定義它們,但您可能更願意花時間定義您將需要的類,然後在整個項目中需要它們時可以使用它們。 它可能不會在時間/收益方面得到回報。

剛剛成立了一堆類:

.ft-12 {} 
.ft-14 {} 
.ft-16 {} 

等等等等

這是值得的,讓事情變得簡單。

0

我會建議一個jQuery的形式給出:

var font_size = temp_css_class.split('-')[1]; 

$(temp_css_class).each(function() { 
    $(this).css("font-size", font_size + "px"); 
}); 

其中 「temp_css_class」 是你的類名。

+1

這是一個相當「笨」 「方法。它會比CSS慢得多,會讓JavaScript帶有CSS問題,並且不適用於片段運行後添加到頁面的元素。 –

+0

仍然是沒有LESS或SASS的唯一方法嗎? – Ivozor

+0

我認爲[@TimPalmer的方式](http://stackoverflow.com/a/20572198/139010)更好,sans LESS/SASS。 –