2014-05-22 101 views
2

是否可以在單個sass斷點內設置一次變量的值,而不是每次使用變量?我可以在斷點內設置一個Sass變量嗎?

換句話說,我想這樣做:

$tab: 600px; 
$wp: 100%; 

@include breakpoint($tab) { 
    $wp: 95%; 
} 

.alpha { 
    // ... 
    width: $wp; 
} 

.beta { 
    // ... 
    width: $wp; 
} 

.gamma { 
    // ... 
    width: $wp; 
} 

...而不是這樣的:

$tab: 600px; 
$wp: 100%; 
$wp-tab: 95%; 

.alpha { 
    // ... 
    width: $wp; 
    @include breakpoint($tab) { 
     width: $wp-tab; 
    } 
} 

.beta { 
    // ... 
    width: $wp; 
    @include breakpoint($tab) { 
     width: $wp-tab; 
    } 
} 

.gamma { 
    // ... 
    width: $wp; 
    @include breakpoint($tab) { 
     width: $wp-tab; 
    } 
} 

我不認爲第一種方法將工作的。有另一種方法可以達到相同的結果嗎?這種方法是一個壞主意嗎?

+0

您是否嘗試過的第一種方式?我認爲它有效 –

回答

2

這是不可能的。

報價NEX3,薩斯開發商:

雖然這將是很酷,這是非常相反的薩斯樣式表的 現有的語義。你已經概述了 有一個含義:它將順序設置變量兩次,然後 訪問它(模仿一些作用域問題)。 Sass的順序性和主要性是Sass意味着你所描述的規則的自動複製 變得非常複雜。實際上,我們認爲 認爲處理SassScript &和結束 的事情非常相似,意識到實際上不可能這樣做並且保留現有的語義。

您現在可以做的最佳近似值是將 需要的樣式與參數混合,並將其包含在您的媒體 查詢中。

來源:https://github.com/nex3/sass/issues/1227

+0

爲什麼我找不到?謝謝。 – David

相關問題