在前端根據(jù)設(shè)計(jì)文件的布局和文字圖片來制作的頁面,并添加頁面的交互效果,其中可能需要繪制圖形組成各種頁面效果,譬如代表加載的小圖標(biāo)、矩形或者圓形的按鈕、文字環(huán)繞著自定義圖形的效果和不規(guī)則圖形的鼠標(biāo)經(jīng)過效果等。簡單的圓形、矩形,圓形可以用border-radius: 50%; 矩形可以用transform: skewX()設(shè)置一個(gè)角度沿著x軸斜切變換,形成矩形。圓形和矩形都還能clip-path: polygon()設(shè)置樣式繪制。文字環(huán)繞自定義圖形的效果,則可以用shape-outside和clip-path設(shè)置。shape-outside和clip-path是兩個(gè)CSS屬性,可以用來設(shè)置元素的形狀和元素的剪切。shape-outside的屬性是用來設(shè)置元素的外部形狀,使文本和其他元素可以環(huán)繞在該形狀的周圍。那么就可以使用不同的函數(shù)來創(chuàng)建不同的形狀,例如circle()、ellipse()、inset()、polygon()等。這些函數(shù)可以指定形狀的尺寸、位置和角度等參數(shù)。
例如設(shè)置位置的X坐標(biāo)、Y坐標(biāo),如下圖所示,shape-outside的polygon()函數(shù)可以使浮動(dòng)元素的文字圍繞已設(shè)置的形狀,形成文字圍繞效果,如果只設(shè)置了合適的shape-outside樣式文字就可以環(huán)繞,但是如果有背景顏色就能看出來實(shí)際是沒有裁切的,那么就需要設(shè)置clip-path。
clip-path的屬性,可以用來設(shè)置元素的剪切路徑,用以裁剪出元素的可以看見的部分。它可以用來創(chuàng)建各種形狀,例如圓形、橢圓形、多邊形等,以及使用SVG路徑來定義更復(fù)雜的形狀。圖片裁剪成不規(guī)則圖形,鼠標(biāo)經(jīng)過恢復(fù)原樣,此過程可以添加一個(gè)過渡時(shí)間,如下所示:
Css主要樣式如下所示:
Img{
-webkit-clip-path: polygon(43% 0, 62% 0, 52% 26%, 69% 20%, 32% 100%, 42% 40%, 26% 46%);
clip-path: polygon(43% 0, 62% 0, 52% 26%, 69% 20%, 32% 100%, 42% 40%, 26% 46%);
-webkit-transition: all 0.5s;transition: all 0.5s;
}
Img:hover{
-webkit-clip-path: polygon(0 0, 100% 0, 100% 100%, 0% 100%, 0 100%, 0 100%, 0 100%);
clip-path:polygon(0 0, 100% 0, 100% 100%, 0% 100%, 0 100%, 0 100%, 0 100%);
如沒特殊注明,文章均為方維網(wǎng)絡(luò)原創(chuàng),轉(zhuǎn)載請(qǐng)注明來自http://pdcharm.com/news/6856.html