我想獲得邊框漸變(從頂端:#0c93c0;到底部:白色)。我想知道,有沒有什麼辦法讓css3爲webkit和moz瀏覽器? THX提前跨瀏覽器邊框漸變
跨瀏覽器邊框漸變
回答
而不是邊界,我會使用背景漸變和填充。相同的外觀,但更容易,更支持。
一個簡單的例子:
<div class="g">
<div>bla</div>
</div>
CSS:
.g {
background-image: -webkit-linear-gradient(top, #0c93C0, #FFF);
background-image: -moz-linear-gradient(top, #0c93C0, #FFF);
background-image: -ms-linear-gradient(top, #0c93C0, #FFF);
background-image: -o-linear-gradient(top, #0c93C0, #FFF);
background-image: linear-gradient(top, #0c93C0, #FFF);
padding: 1px;
}
.g > div { background: #fff; }
+1將其恢復爲零。我不知道爲什麼它被低估。 –
@RobW我認爲它是低調的,因爲缺乏優雅(添加額外的標記不是優雅的)。 –
小提琴:http://jsfiddle.net/9ZDTA/
添加額外的聲明要支持的每個瀏覽器引擎,使用特定的前綴。
background-color: #0c93C0; /* fallback color if gradients are not supported */
background-image: -webkit-linear-gradient(top, #0c93C0, #FFF);
background-image: -moz-linear-gradient(top, #0c93C0, #FFF);
background-image: -ms-linear-gradient(top, #0c93C0, #FFF);
background-image: -o-linear-gradient(top, #0c93C0, #FFF);
background-image: linear-gradient(top, #0c93C0, #FFF); /* standard, but currently unimplemented */
請參閱this source。
那是什麼?我想要'邊界'漸變。我的意思是邊框:1px,固體...不是「背景」 –
Mozilla不支持邊框漸變。我展示了一個跨瀏覽器的方式來顯示'背景漸變'。當Mozilla添加對邊界漸變的支持時,您可以使用我的答案作爲跨瀏覽器支持的基礎。 –
使用less.css(當然你可以不用還),關鍵是在pseudoselectors(:before和:after ):
1.定義跨瀏覽器梯度:
.linear-gradient (@dir, @colorFrom, @colorTo) { background: -webkit-linear-gradient(@dir, @colorFrom, @colorTo); background: -moz-linear-gradient(@dir, @colorFrom, @colorTo); background: -ms-linear-gradient(@dir, @colorFrom, @colorTo); background: -o-linear-gradient(@dir, @colorFrom, @colorTo); }
2.定義邊界梯度束:
.border-gradient(@colorFrom, @colorTo){ border-top:1px solid @colorFrom; border-bottom:1px solid @colorTo; position:relative; .border-bundle(@colorFrom, @colorTo){ position:absolute; content:""; width:1px; height:100%; top:0; .linear-gradient(top, @colorFrom, @colorTo); } &:before{ .border-bundle(@colorFrom, @colorTo); left: 0; } &:after { .border-bundle(@colorFrom, @colorTo); right:0; } }
我們現在可以這樣使用它:
.some-class{ /* other properties */ .border-gradient(#0c93c0, #FFF); }
使用更少!可悲的是,這個問題並沒有要求它,所以不能upvote。另外,添加最後兩行時會出錯('&:before [...]'和'&:after [...]')。 –
錯誤提示是: '.border-bundle(,,,)'找不到匹配的定義' –
- 1. CSS漸變跨瀏覽器
- 2. 跨瀏覽器漸變問題
- 3. 跨瀏覽器線性漸變
- 4. CSS跨瀏覽器彎曲邊框
- 5. 在IE瀏覽器中沒有顯示漸變css邊框firefox
- 6. 邊框漸變
- 7. 如何實現跨瀏覽器不透明度漸變(不是顏色漸變)
- 8. 跨瀏覽器浮動框
- 9. 跨瀏覽器文本漸變和筆畫
- 10. Twitter引導:跨瀏覽器圓角和漸變?
- 11. 跨瀏覽器的CSS背景圖像與線性漸變
- 12. 跨瀏覽器背景 - 漸變加圖像
- 13. 實現跨瀏覽器漸變的CSS前綴
- 14. 跨瀏覽器的線性漸變規則
- 15. CSS漸變邊框:
- 16. 跨瀏覽器彎曲的邊界
- 17. 跨瀏覽器邊欄組件
- 18. CSS3漸變多個瀏覽器
- 19. 漸變不適用於IE瀏覽器
- 20. IE瀏覽器的CSS漸變高度?
- 21. CSS瀏覽器檢測徑向漸變?
- 22. CSS漸變爲所有Web瀏覽器
- 23. 使邊框消失的漸變邊框
- 24. 如何使CSS三角形(有邊框)跨瀏覽器
- 25. 跨瀏覽器與多瀏覽器
- 26. 單擊漸變邊框
- 27. UIPickerView刪除漸變邊框
- 28. CSS線性漸變邊框
- 29. 邊框上使用漸變
- 30. 底部漸變邊框
這似乎掩蓋它:http://stackoverflow.com/questions/2717127/css3 - 漸變邊界 – mwan
它只適用於-moz瀏覽器。它不包括webkit –
那麼只需添加另一個WebKit聲明? – BoltClock