7
A
回答
6
雖然::selection
僞元素仍然在draft spec,text-decoration
沒有說明作爲允許的樣式屬性之一。鑑於瀏覽器無論如何實施它們,他們應該遵循該文件的規則,不允許text-decoration
這樣。
也就是說,您的選擇器沒有任何問題,但值得注意的是,Firefox使用供應商前綴版本::-moz-selection
來代替。您必須重複該規則才能支持該瀏覽器,以及Chrome,Safari和Opera(有關信息,請參閱this answer)。
所以在SCSS,你可以這樣做:
* {
&::-moz-selection { /* Style any selection */ }
&::selection { /* Style any selection */ }
}
您可能能夠減少使用的混入,但我不知道,如果混入用僞元素選擇工作。
11
混入與僞元素選擇工作;)看到我的mixin:
$prefixes: ("-moz-", "");
@mixin selection($color, $background) {
@each $prefix in $prefixes {
::#{$prefix}selection {
color: $color;
background: $background;
}
}
}
如何使用:
@include selection(white, black);
當然
你可以把它更加靈活,但對我來說就足夠了;)
26
這是我做的方式:
// define it
@mixin selection {
::-moz-selection { @content; }
::selection { @content; }
}
// use it
@include selection {
color: white;
background: black;
}
更新
我建議只使用::selection {}
與autoprefixer而不是mixin。這將使你的代碼更薄,你的大腦更輕:)
在這種情況下,autoprefixer將改變這一點:
::selection {
color: white;
background: black;
}
...(具體取決於你的目標瀏覽器/配置)到類似的東西:
::-moz-selection {
color: white;
background: black;
}
::selection {
color: white;
background: black;
}
0
偉大的mixin,我已經改變了工作規則,通過添加「&」,它對我更好。我還添加了一個空白前綴來獲取不帶前綴的規則。
@mixin selection($color, $background) {
$prefixes: ("-moz-", "-webkit-", "-o-", "-ms-", "");
@each $prefix in $prefixes {
&::#{$prefix}selection {
color: $color;
background: $background;
}
}
}
0
有了指南針,你可以做如下所示:
@import "compass/css3/selection";
@include selection($highlightBackground, $highlightColor)
+0
「僅僅使用別人的圖書館」並不能解釋如何去編寫一個類似的功能,該功能在圖書館中是不存在的。 – cimmanon
相關問題
- 1. 如何將以下css寫入有效的sass,scss?
- 2. 如何使用SASS/SCSS
- 3. 將sass轉換爲scss
- 4. 產生SASS/SCSS
- 5. 導入bootstrap-sass到scss文件
- 6. SCSS(sass)的計算:#{}
- 7. 如何在sass/scss中轉義string css?
- 8. 將Sass/SCSS附加到HTML文檔
- 9. SCSS/SASS - 使用BEM與SASS和屬性
- 10. 如何使用帶SASS語法(不是SCSS)的sass地圖?
- 11. Laravel與XAMPP與SASS/SCSS
- 12. 如何使用gulp從node_modules導入引導程序4 sass/scss
- 13. scss/sass簡碼或簡化
- 14. SCSS(SASS)效率幫助
- 15. SASS/SCSS @extend規則選擇
- 16. SASS/SCSS內容功能
- 17. 創建使用SASS/SCSS
- 18. SCSS/SASS的條件變量
- 19. 如何將scss編譯爲帶有節點sass的css
- 20. SASS/SCSS @mixin使用參數
- 21. Webpack - 導出SASS(.scss)文件
- 22. Susy - sass,而不是SCSS
- 23. sass和scss有區別嗎?
- 24. SASS/SCSS對象鍵值環
- 25. 關聯數組SCSS/SASS
- 26. 使用&符號的SASS/SCSS
- 27. 基金會SASS/SCSS變量
- 28. 如何使用hanami編譯器將scss文件導入另一個scss?
- 29. 如何使用scssphp編譯器將scss文件導入另一個scss文件?
- 30. 重寫廠商SCSS包括
::選擇只有一個-moz前綴,這是值得大家注意,這是一個非標準的,不應該被使用,檢查Mozilla開發人員網絡上的此[頁面](https://developer.mozilla.org/en-US/docs/CSS/::selection)。 – Pierre
@Peter:奇怪我第一次編輯這個答案時就錯過了。我通常密切關注這些事情。 (是的,我知道你不是彼得。) – BoltClock