HTML: 用CSS畫一個三角形

代碼如下:

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en">
<head>
    <meta http-equiv="Content-Type" content="text/html;charset=UTF-8">
    <title>用CSS畫一個三角形</title>
    <style>
        #triangle {
            width:0;height:0;
            border-top:100px solid green;
            border-right:100px solid red;
            border-bottom:100px solid black;
            border-left:100px solid blue;
        }
    </style>
</head>
<body>
    
    <div id=‘triangle‘></div>
</body>
</html>

效果如圖:
技术分享

幾個注意:div寬度,高度分別爲0,而div邊框的寬度設定,這時可以看到四個三角形,那麼我們要取哪一個三角形,就需要讓其他三角的邊框的顏色爲透明?

爲什麼是透明,而不是白色呢??

因爲如果是白色,而三角型所在的區域同時又有背景色,那麼在三角型的區域就會把背景顏色覆蓋。

如下圖:

技术分享

三角形白色部分把背景顏色覆蓋了!Error!

 

那麼如何讓邊框變透明呢??

答案就是border-color屬性中的默認值:transparent

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en">
<head>
    <meta http-equiv="Content-Type" content="text/html;charset=UTF-8">
    <title>用CSS畫一個三角形</title>
    <style>
        div.bg {
            background-color:maroon;
            height:500px;
        }
        #triangle {
            width:0;height:0;
            border-top:100px solid transparent;
            border-right:100px solid transparent;
            border-bottom:100px solid black;
            border-left:100px solid transparent;
        }
    </style>
</head>
<body>
    
    <div class=‘bg‘>
        <div id=‘triangle‘></div>
    </div>
</body>
</html>

效果如圖:
技术分享

三角形成功出現,現在可以做一個模型了,比如tips,warnings.

  

郑重声明:本站内容如果来自互联网及其他传播媒体,其版权均属原媒体及文章作者所有。转载目的在于传递更多信息及用于网络分享,并不代表本站赞同其观点和对其真实性负责,也不构成任何其他建议。