css之outline實現圓角效果


 對,你沒有看錯,outline也可以實現圓角,不過請先讀完自然會知道結果;

==========================================================================================================================================================================

都知道border屬性和outline屬性,都是邊框的意思,

其次,支持的屬性值幾乎都是一樣的,例如,outline-styleborder-styledotteddashedsolid...之類的,一些語法也幾乎一樣。

對瀏覽器的支持

outline嚴格來講屬於CSS3屬性,但是IE8+瀏覽器就支持了。外掛一句,IE9+瀏覽器的outline還支持invert,專門針對outline-color. 所以,如果你的項目不用管IE6/IE7瀏覽器,可以把outline掛在心中,有時候說不定會幫忙的支持

三 是否占據空間

這點我們都知道 border 屬性是占據位置的,假設元素100*100像素,我們給元素設置border:10px solid,則實際該元素占據的尺寸至少就是120*120像素;但是outline就不一樣了,他根本不占位置

看代碼

<!DOCTYPE html>
<html lang="en">
<head>
	<meta charset="UTF-8">
	<title>Document</title>
	<style>
     *{
     	margin: 0 auto;
     	

     }
     #aa{
     	 width: 500px;
     	  height: 500px;
     	   background: red;
     	    outline: 10px yellow solid;
     }

	</style>
</head>
<body>
	<div id="aa">
		



	</div>
</body>
</html>

  

 

三、outline的圓角效果

border有圓角效果那么outline有沒有圓角效果呢

我們來試試

用代碼說話

 

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>Document</title>
    <style>
    *{
        margin:0 auto;
    }
    img {
    outline: 30px solid #cd0000;    
    -moz-outline-radius: 30px;
}
    </style>
</head>
<body>
<div style="width:100px;height:800px;margin-top:50px">
    <img src="f1.png" alt="">    
</div>


</body>
</html>

 

我們在各大瀏覽器看看效果

 

谷歌

 

 

 

 是不是沒有效果

 

360

 

 

 

 

 也沒有

 

火狐呢

 

 

我靠;火狐可以6666但是必須加火狐的前綴

是不是很松松啊!如果你觀察足夠仔細,會發現,outline-radiusborder-radius還是有區別的?看出來沒,區別在哪里?答對有獎……哈,沒錯,你們都答錯了!沒有任何區別,outline-radius的圓角規則、語法之類跟border-radius就是一樣的。

唯一的區別,也就是兼容性問題,不是看出來的,是試出來的。,目前,除了FireFox瀏覽器支持outline-radius,其他瀏覽器都是空大屁!

如果是僅webkit/blink瀏覽器支持還好說,至少移動端還可以用用,搞了個僅僅FireFox支持,玩毛線啊!不對,連毛線都沒得玩!

 

親,不要絕望啊,車到山前必有路,此路進去……

祝大家  十一快樂

( ^_^ )/~~拜拜

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM