2012-06-03 39 views
2

我有一個LESS樣式規則,它應該適用於具有相同寬度和高度值的元素。
該值應該是元素父元素寬度的3%。
這是我由JavaScript評價和一點點的jQuery迄今所做的:
與LESS和jQuery相等的寬度和高度

 
element { 
    @var: ~`Math.round(($(parent).width()*3)/100)+"px"`; 
    width: @var; 
    height: @var; 
} 

所以我的問題是:
有更少的,所以任何原生的方式,我可以做到這一點沒有JavaScript evals?提前致謝。

+0

從我現在刪除回答您的評論:'高度:3%'將是家長的高度在3%,當你想爲寬度和高度在像素相同的值。 – FelipeAls

+0

@FelipeAlsacreations正確 – Sepehr

回答

-2
在我看來

沒有理由在所有使用JavaScript - 我會直接使用CSS,並添加一個類來所有我想有自己的父母的只有3%的元素 - 這樣的:

.threepercent{ 
    height:3%; 
    width:3%; 
} 
-2

只要你的元素是block級別,你就可以百分比。如果它不起作用,你的元素可能是inline

parent-element { 
    display: block; 
    width: 300px; 
    height: 300px; 
} 

parent-element element { 
    display: block; 
    width: 3%; // will be 10px 
    height: 3%; // will be 10px 
} 

@parentSize: 300px; 

parent-element { 
    display: block; 
    width: @parentSize; 
    height: @parentSize; 
} 

child-element { 
    display: block; 
    width: @parentSize* 0.03; 
    height: @parentSize* 0.03; 
} 
+0

父級大小不固定。再次閱讀我的問題。 – Sepehr

+0

我不明白爲什麼它很重要,百分比仍然適用於基於父級渲染大小的子元素。我只是用父母的固定大小來演示。看到這個例子http://jsfiddle.net/eKJhT/。如果你查看計算出的孩子的CSS,你會看到它是20x20(父母的計算值的10%)。 – Terry

+0

除非我誤解你的問題...... – Terry