如何使用CSS畫(huà)心形?相信很多沒(méi)有經(jīng)驗(yàn)的人對(duì)此束手無(wú)策,為此本文總結(jié)了問(wèn)題出現(xiàn)的原因和解決方法,通過(guò)這篇文章希望你能解決這個(gè)問(wèn)題。
1.一顆div一顆心
用一個(gè)div畫(huà)出一個(gè)心,核心的方法就是使用偽元素。
首先,我們?cè)陧?yè)面上先寫(xiě)出一個(gè)div:
<div></div>
使用CSS,將這個(gè)div變?yōu)橐粋€(gè)橘紅色的正方形:
div { position:relative; top: 100px; left: 50%; width: 100px; height: 100px; background-color: tomato; }
接著我們利用元素的兩個(gè)偽元素:before和:after,畫(huà)出一個(gè)藍(lán)色的圓和一個(gè)黃色的圓,并且將它們的圓心分別定位在正方形的上邊和右邊。
div:before { content: ""; position:absolute; top: -50px; left: 0; width: 100px; height: 100px; border-radius: 50%; background-color: blue; } div:after{ content: ""; position: absolute; top: 0px; left: 50px; width: 100px; height: 100px; background-color: yellow; border-radius: 50%; }
再來(lái),將剛剛實(shí)現(xiàn)的兩個(gè)圓變成和正方形一樣的顏色:
div:before { ... background-color: tomato; } div:after{ ... background-color: tomato; }
最后,將元素div旋轉(zhuǎn)45度,我們要的心形就實(shí)現(xiàn)了!就是這么簡(jiǎn)單。
div { position:relative; top: 100px; left: 50%; width: 100px; height: 100px; background-color: tomato; transform: rotate(-45deg); }
2.一顆心不夠,那我們就畫(huà)一屏
一顆心不夠表達(dá)我的心意,那么就給她畫(huà)出一屏幕的心。
????????????
????????????
????????????
????????????
????????????
我對(duì)你有表達(dá)不完的心意,就有寫(xiě)不完的div:
HTML
<h2>愛(ài)無(wú)處不在...</h2> <div class="heart"></div> <div class="heart"></div> <div class="heart"></div> <div class="heart"></div> <div class="heart"></div> <div class="heart"></div> <div class="heart"></div> <div class="heart"></div> ...
浮動(dòng)讓它們填滿整個(gè)屏幕:
.heart{ position: relative; width: 100px; height: 90px; float: left; }
兩個(gè)偽元素代表我的左心房和右心房:
.heart:before, .heart:after{ position: absolute; content: ""; left: 50px; top: 0; width: 50px; height: 80px; background: #fc2e5a; border-radius: 50px 50px 0 0; transform-origin: 0 100%; } .heart:after{ left: 0; transform-origin :100% 100%; }
讓左右心房都旋轉(zhuǎn)45度,就形成了我滿滿的一屏幕心:
.heart:before, .heart:after{ ... transform: rotate(-45deg); } .heart:after{ ... transform: rotate(45deg); }
3.我對(duì)你的愛(ài)有多深
“以前我看事物,是用肉眼去看,但是在我死去的那一剎那,我開(kāi)始用心眼去看這個(gè)世界,所有的事物,真的可以看得前所未有的那么清楚?!?-周星馳
無(wú)論有多少顆心都不能表達(dá)出我對(duì)你的愛(ài)意有多深,于是,我要讓你看到我的心都是由每一個(gè)愛(ài)你的細(xì)胞所組成的:
<div class="heart"></div>
CSS:
.heart { position: absolute; left: 50%; top: 50%; width: 105px; height: 105px; margin: -52.5px 0 0 -52.5px; }
像素級(jí)的世界可以由box-shadow屬性實(shí)現(xiàn):
.heart::before { content: ''; display: block; transition: all 400ms; width: 15px; height: 15px; margin: -15px 0 0 -15px; box-shadow: 30px 15px #8e1a19, 45px 15px #ac0500, 75px 15px #f73f0c, 90px 15px #fa5f27, 15px 30px #740100, 30px 30px #8e0500, 45px 30px #8e1918, 60px 30px #ca1300, 75px 30px #f34f2b, 90px 30px #df351f, 105px 30px #f77c2a, 15px 45px #4b0000, 30px 45px #690100, 45px 45px #8e0f0b, 60px 45px #bf1000, 75px 45px #f84010, 90px 45px #f04222, 105px 45px #fa5724, 15px 60px #451312, 30px 60px #5a0100, 45px 60px #840e0c, 60px 60px #a51d1a, 75px 60px #ed2805, 90px 60px #d9321e, 105px 60px #f44622, 30px 75px #3b0000, 45px 75px #5d1a1b, 60px 75px #8e1a19, 75px 75px #a80700, 90px 75px #b90a00, 45px 90px #3d0000, 60px 90px #551415, 75px 90px #670100, 60px 105px #340000; animation: pulse 1.2s steps(1) infinite; }
css的選擇器可以分為三大類(lèi),即id選擇器、class選擇器、標(biāo)簽選擇器。它們之間可以有多種組合,有后代選擇器、子選擇器、偽類(lèi)選擇器、通用選擇器、群組選擇器等等
看完上述內(nèi)容,你們掌握如何使用CSS畫(huà)心形的方法了嗎?如果還想學(xué)到更多技能或想了解更多相關(guān)內(nèi)容,歡迎關(guān)注創(chuàng)新互聯(lián)行業(yè)資訊頻道,感謝各位的閱讀!
分享題目:如何使用CSS畫(huà)心形-創(chuàng)新互聯(lián)
標(biāo)題網(wǎng)址:http://www.ekvhdxd.cn/article42/djoiec.html
成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供搜索引擎優(yōu)化、軟件開(kāi)發(fā)、響應(yīng)式網(wǎng)站、建站公司、定制開(kāi)發(fā)、全網(wǎng)營(yíng)銷(xiāo)推廣
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請(qǐng)盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如需處理請(qǐng)聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來(lái)源: 創(chuàng)新互聯(lián)
猜你還喜歡下面的內(nèi)容