我想用css創建一個奇形的三角形。我的第一個想法是使用透明邊框與transform: rotate
,它的工作(見左三角)。現在我想使用漸變邊框圖像作爲同一個三角形的背景,但我無法使其工作。我嘗試了很多東西,如更換border-width
,使用包裝和overflow:hidden
等,沒有任何工作。在這裏,我發佈了其中一個嘗試(請參閱右側形狀),因爲您看到該模式佔用了所有空間,而不是遵循三角形形狀。有任何想法嗎?三角形的邊框圖像漸變圖案
#top-left {
position:absolute;
left:78px;
width: 0;
height: 0;
border-top: 100px solid transparent;
border-right: 80px solid black;
border-bottom: 50px solid transparent;
-webkit-transform: rotate(-20deg);
}
#top-right {
position:absolute;
left:300px;
width: 0;
height: 0;
border-image: repeating-linear-gradient(0deg, pink, pink 1%, purple 1%, purple 8%) 10;
border-image-width: 100px 80px 50px 0px;
border-width: 100px 80px 50px 0px;
border-style: solid;
-webkit-transform: rotate(-20deg);
}
<div id="wrapper">
<div id="top-left"></div>
<div id="top-right"></div>
</div>
編輯:安德烈·費奧多羅夫的回答是不錯的,但有一個問題,當背景不是純色,像這樣的例子:
body{
background-color: #6d695c;
background-image:
repeating-linear-gradient(120deg, rgba(255,255,255,.1), rgba(255,255,255,.1) 1px, transparent 1px, transparent 60px),
repeating-linear-gradient(60deg, rgba(255,255,255,.1), rgba(255,255,255,.1) 1px, transparent 1px, transparent 60px),
linear-gradient(60deg, rgba(0,0,0,.1) 25%, transparent 25%, transparent 75%, rgba(0,0,0,.1) 75%, rgba(0,0,0,.1)),
linear-gradient(120deg, rgba(0,0,0,.1) 25%, transparent 25%, transparent 75%, rgba(0,0,0,.1) 75%, rgba(0,0,0,.1));
background-size: 70px 120px;
}
#wrapper {
position: relative;
}
#top-left {
position:absolute;
left:0px;
\t width: 0;
\t height: 0;
\t border-top: 100px solid #fff;
\t border-right: 80px solid transparent;
\t border-bottom: 50px solid #fff;
-webkit-transform: rotate(-20deg);
}
#top-right {
position:absolute;
z-index: -10;
left:0;
width: 0;
height: 0;
border-image: repeating-linear-gradient(0deg, pink, pink 1%, purple 1%, purple 8%) 10;
border-image-width: 100px 80px 50px 0px;
border-width: 100px 80px 50px 0px;
border-style: solid;
-webkit-transform: rotate(-20deg);
}
<div id="wrapper">
<div id="top-left"></div>
<div id="top-right"></div>
</div>
所以,像這樣?http://codepen.io/8odoros/pen/kXpqvA?編輯= 1100好! –
@ 8odoros是的,這是想法,你也可以增加元素和使用變換:http://codepen.io/gc-nomade/pen/OXEqog –
我當然保持這一點,它是計算沉重,雖然...不是你的錯,但我的主要目標之一是通過UI改變模式。 –