真实的国产乱ⅩXXX66竹夫人,五月香六月婷婷激情综合,亚洲日本VA一区二区三区,亚洲精品一区二区三区麻豆

成都創(chuàng)新互聯(lián)網(wǎng)站制作重慶分公司

CSS3中怎么繪制不規(guī)則圖形

這篇文章給大家介紹CSS3中怎么繪制不規(guī)則圖形,內(nèi)容非常詳細(xì),感興趣的小伙伴們可以參考借鑒,希望對大家能有所幫助。

10年積累的成都做網(wǎng)站、成都網(wǎng)站設(shè)計(jì)經(jīng)驗(yàn),可以快速應(yīng)對客戶對網(wǎng)站的新想法和需求。提供各種問題對應(yīng)的解決方案。讓選擇我們的客戶得到更好、更有力的網(wǎng)絡(luò)服務(wù)。我雖然不認(rèn)識(shí)你,你也不認(rèn)識(shí)我。但先網(wǎng)站設(shè)計(jì)后付款的網(wǎng)站建設(shè)流程,更有瓜州免費(fèi)網(wǎng)站建設(shè)讓你可以放心的選擇與我們合作。

聲明圖形

我們需要使用shape-outside 屬性聲明不規(guī)則圖形。當(dāng)前, shape-outside 屬性只能被應(yīng)用于浮動(dòng)元素,并且只能應(yīng)用于塊級元素。如果需要在非塊級元素上使用這些屬性,必須先把元素聲明為塊級。

Shape-* 值有三種賦值方式: 自動(dòng),基本圖形或者圖片鏈接。如果被設(shè)置為自動(dòng),浮動(dòng)元素將繼續(xù)作為傳統(tǒng)的盒模型進(jìn)行渲染。如果你還不熟悉盒模型,請參考CSS盒模型,這是閱讀本篇文章的基礎(chǔ)。

繪制方法包括:rectangle、inset-rectangle、circle、ellipse或polygon方法等。你可以通過鏈接查看詳細(xì)的描述。

如果屬性被設(shè)置為圖片鏈接, 瀏覽器會(huì)按照圖片的“alpha通道”來繪制圖形形狀。

在元素上創(chuàng)建坐標(biāo)系

聲明了CSS 圖形之后,我們首先需要?jiǎng)?chuàng)建將用于繪制圖形的坐標(biāo)系。

坐標(biāo)系是非常必要的,因?yàn)閳D形需要依據(jù)此坐標(biāo)系上的點(diǎn)陣進(jìn)行繪制。shape-* 屬性是基于盒模型的,為了使它啟作用,需要明確指定盒子的大小,限制不規(guī)則圖形在盒子范圍內(nèi),它也將被用于創(chuàng)建繪制坐標(biāo)系,坐標(biāo)系的起點(diǎn)位于形盒子左上角。如果沒有明確寬和高聲明, shape-* 屬性將不啟作用。

設(shè)置自定義圖形的背景色

應(yīng)用了自定義圖形,它的盒模型仍然存在,其它傳統(tǒng)的樣式設(shè)置將作用于盒模型范圍。例如,下面這個(gè)例子中,

我們僅僅想創(chuàng)建一個(gè)浮動(dòng)圓形,并設(shè)置這個(gè)圓形的背景色。按照正常的思路理解,效果應(yīng)該是這樣的:
CSS3中怎么繪制不規(guī)則圖形

但是當(dāng)設(shè)置了盒子的背景色后,你會(huì)發(fā)現(xiàn)和預(yù)期的效果不同,效果如下:
CSS3中怎么繪制不規(guī)則圖形

在上圖中我們看到背景色被應(yīng)用到盒模型范圍,而不是我們預(yù)想的圓形內(nèi)。

那么,我們應(yīng)該怎樣設(shè)置圓形的背景色呢?這就引出了一個(gè)新的CSS樣式: clip-path 。clip-path 用于限制當(dāng)前樣式的作用范圍。在下面的例子中你將看到它的使用方法。

提醒

現(xiàn)在,shape-outside 屬性只作用域浮動(dòng)的元素,并且僅限制于在塊級元素上應(yīng)用。使用這些屬性定義的元素,其周圍的文本將依賴于圖形形狀排布。未來的CSS 形狀將不僅僅限制與應(yīng)用于浮動(dòng)元素上,我們將不僅僅可以在文本外部的圖形上做文章,完全可以在其內(nèi)部定義自定義圖形,實(shí)現(xiàn)如下效果:
CSS3中怎么繪制不規(guī)則圖形

實(shí)例-使用shape-outside 創(chuàng)建環(huán)繞于自定義形狀的浮動(dòng)文本

我們從一個(gè)簡單的例子開始。在實(shí)例中我們將創(chuàng)建一個(gè)自定義圖形,并且內(nèi)置文本流,最終效果圖如下(文章末尾提供實(shí)例下載鏈接):
CSS3中怎么繪制不規(guī)則圖形

例子中我們擁有兩個(gè)容器,用于設(shè)置自定義形狀和嵌套文本內(nèi)容。代碼如下:

CSS Code復(fù)制內(nèi)容到剪貼板

  1.   

  

  •   

  •   

  •   

  • La Tour 
    Eiffel

      

  •   

  • Lorem Ipsum.....

      

  •   

  •   

  •   

  •   

    首先我們需要聲明浮動(dòng)區(qū)域的DIV節(jié)點(diǎn),并且使用固定值設(shè)置大小。代碼如下:

    CSS Code復(fù)制內(nèi)容到剪貼板

    1. .container{   

    2. overflow:hidden;   

    3.   

    4. height: 100vh;   

    5.   

    6. width: 100vw;   

    7.   

    8. }   

    9.   

    10. .shaped{   

    11.   

    12. float:left;   

    13.   

    14. height:100vh;   

    15.   

    16. width:40vw;   

    17.   

    18. float:rightright;   

    19.   

    20. background: black url(../images/eiffel.jpg) center top no-repeat;   

    21.   

    22. background-size:cover;   

    23.   

    24. }  

    現(xiàn)在坐標(biāo)系已經(jīng)創(chuàng)建成功,接下來我們將要繪制圖形了??梢酝ㄟ^兩種方式來繪制圖形:

    使用polygon()

    我們可以使用polygon() 方法來計(jì)算圖形范圍。這個(gè)方法從坐標(biāo)系中獲取多個(gè)點(diǎn)用于繪制圖形,每個(gè)點(diǎn)由(x, y)值定位。 例子中我們將要?jiǎng)?chuàng)建一個(gè)非常簡單的多邊形,如下圖所示:
    CSS3中怎么繪制不規(guī)則圖形

    坐標(biāo)點(diǎn)的單位可以是固定值,或者百分比。在這個(gè)例子中我們將以百分比的形式設(shè)置點(diǎn)陣位置。接下來我們需要應(yīng)用這個(gè)樣式在浮動(dòng)元素上。

    CSS Code復(fù)制內(nèi)容到剪貼板

    1. .shaped{   

    2. /*…*/  

    3.   

    4. shape-outside: polygon(0 0, 100% 0, 100% 100%,30% 100%);   

    5.   

    6. shape-margin: 20px;   

    7.   

    8. }  

    應(yīng)用以上的樣式后,一個(gè)不規(guī)則的圖形-梯形產(chǎn)生了。

    可以看到代碼中使用了shape-margin 屬性,它用于設(shè)置圖形和文本內(nèi)容之間的邊距。

    接下來需要添加背景圖,需要注意在添加背景圖之后,它將被應(yīng)用于盒模型,目前為止效果如下:
    CSS3中怎么繪制不規(guī)則圖形

    所以,為了達(dá)到預(yù)期效果,我們需要設(shè)置clip-path 屬性,并且設(shè)置其范圍和shape-outside 屬性相同。

    CSS Code復(fù)制內(nèi)容到剪貼板

    1. .shaped{   

    2. /*…*/  

    3.   

    4. clip-path: polygon(0 0, 100% 0, 100% 100%,30% 100%);   

    5.   

    6. }  

    現(xiàn)在,我們就通過polygon() 方法實(shí)現(xiàn)了目標(biāo)效果。

    使用圖片鏈接

    我們也可以通過圖片(嚴(yán)格說是擁有通明區(qū)域的圖片)來創(chuàng)建不規(guī)則圖形,依據(jù)圖片的“alpha通道” 生成不規(guī)則圖形。

    例如,替代polygon() 聲明方法。我們可以設(shè)置shape-outside 屬性值為圖片URI,瀏覽器就會(huì)自動(dòng)依據(jù)圖片來繪制不規(guī)則圖形。
    CSS3中怎么繪制不規(guī)則圖形

    圖片中的透明部分將被聲明為文本元素的浮動(dòng)部分。其余部分被聲明為不規(guī)則圖形。代碼如下:

    CSS Code復(fù)制內(nèi)容到剪貼板

    1. .shaped{   

    2. /*…*/  

    3.   

    4. shape-outside: url(/images/mm.png);   

    5.   

    6. shape-image-threshold: 0.5;這個(gè)屬性用于設(shè)置浮動(dòng)區(qū)域透明度范圍   

    7.   

    8. }  

    關(guān)于CSS3中怎么繪制不規(guī)則圖形就分享到這里了,希望以上內(nèi)容可以對大家有一定的幫助,可以學(xué)到更多知識(shí)。如果覺得文章不錯(cuò),可以把它分享出去讓更多的人看到。


    文章題目:CSS3中怎么繪制不規(guī)則圖形
    文章地址:http://weahome.cn/article/gihddh.html

    其他資訊

    在線咨詢

    微信咨詢

    電話咨詢

    028-86922220(工作日)

    18980820575(7×24)

    提交需求

    返回頂部