大家好!
今天跟大家分享一個(gè)用 css 畫(huà)中國(guó)結(jié)的教程。
最終效果如下:
大家如果感興趣可以參考我的源碼:gitHub地址
首先,我們定義好畫(huà)中國(guó)結(jié)需要的結(jié)構(gòu):
然后開(kāi)始寫(xiě)樣式,讓中國(guó)結(jié)居中顯示:
body { margin: 0; padding: 0; height: 100vh; display: flex; align-items: center; justify-content: center; }
設(shè)置裝中國(guó)結(jié)的容器樣式:
.knot { box-sizing: border-box; font-size: 100px; width: 2em; height: 1.6em; background: skyblue; display: flex; align-items: center; justify-content: center; }
我把中國(guó)結(jié)的基礎(chǔ)樣式拆分成4個(gè)長(zhǎng)方形,首先來(lái)定義長(zhǎng)方形的基礎(chǔ)樣式:
.box { position: absolute; box-sizing: border-box; width: 1em; height: 0.4em; border: var(--b) solid firebrick; --b: 0.1em; }
然后我們來(lái)調(diào)整每一個(gè)長(zhǎng)方形的樣式,把它們組合成結(jié)的基礎(chǔ)樣子:
.knot .box:nth-child(1) { transform: rotate(45deg) translate(-15%, -38%); border-radius: 20% 0% 0% 20% / 50% 0 0 50%; } .knot .box:nth-child(2) { transform: rotate(45deg) translate(15%, 37%); border-radius: 0% 20% 20% 0% / 0% 50% 50% 0%; } .knot .box:nth-child(3) { transform: rotate(-45deg) translate(15%, -38%); border-radius: 0% 20% 20% 0% / 0% 50% 50% 0%; } .knot .box:nth-child(4) { transform: rotate(-45deg) translate(-15%, 37%); border-radius: 20% 0% 0% 20% / 50% 0 0 50%; }
最后,我們利用第一個(gè)和第二個(gè)長(zhǎng)方形的偽元素來(lái)畫(huà)出余下的那兩個(gè)小圓圈:
.knot .box:nth-child(1)::after { box-sizing: border-box; content: ""; position: absolute; width: 0.4em; height: 0.4em; border: var(--b) solid firebrick; border-radius: 50% 50% 50% 0%; top: -0.4em; right: -0.4em; } .knot .box:nth-child(2)::after { box-sizing: border-box; content: ""; position: absolute; width: 0.4em; height: 0.4em; border: var(--b) solid firebrick; border-radius: 50% 0% 50% 50%; top: 0.2em; right: 0.8em; }
大功告成!
文章版權(quán)歸作者所有,未經(jīng)允許請(qǐng)勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。
轉(zhuǎn)載請(qǐng)注明本文地址:http://systransis.cn/yun/54617.html
大家好!今天跟大家分享一個(gè)用 css 畫(huà)中國(guó)結(jié)的教程。最終效果如下: showImg(https://segmentfault.com/img/bVbgz00?w=396&h=320); 大家如果感興趣可以參考我的源碼:gitHub地址 首先,我們定義好畫(huà)中國(guó)結(jié)需要的結(jié)構(gòu): 然后開(kāi)始寫(xiě)樣式,讓中國(guó)結(jié)居中顯示: body { margin: 0; ...
摘要:效果預(yù)覽按下右側(cè)的點(diǎn)擊預(yù)覽按鈕可以在當(dāng)前頁(yè)面預(yù)覽,點(diǎn)擊鏈接可以全屏預(yù)覽。源代碼下載每日前端實(shí)戰(zhàn)系列的全部源代碼請(qǐng)從下載代碼解讀定義,容器中有個(gè)子元素,代表傘蓋,代表吊籃居中顯示定義容器的尺寸,子元素和縱向居中布局先畫(huà)傘蓋。 showImg(https://segmentfault.com/img/bVbh6vq?w=400&h=300); 效果預(yù)覽 按下右側(cè)的點(diǎn)擊預(yù)覽按鈕可以在當(dāng)前頁(yè)面...
摘要:效果預(yù)覽按下右側(cè)的點(diǎn)擊預(yù)覽按鈕可以在當(dāng)前頁(yè)面預(yù)覽,點(diǎn)擊鏈接可以全屏預(yù)覽。源代碼下載每日前端實(shí)戰(zhàn)系列的全部源代碼請(qǐng)從下載代碼解讀定義,容器中有個(gè)子元素,代表傘蓋,代表吊籃居中顯示定義容器的尺寸,子元素和縱向居中布局先畫(huà)傘蓋。 showImg(https://segmentfault.com/img/bVbh6vq?w=400&h=300); 效果預(yù)覽 按下右側(cè)的點(diǎn)擊預(yù)覽按鈕可以在當(dāng)前頁(yè)面...
閱讀 2138·2021-11-11 16:55
閱讀 3202·2021-10-11 10:58
閱讀 3146·2021-09-13 10:28
閱讀 4084·2021-07-26 23:57
閱讀 1073·2019-08-30 15:56
閱讀 1364·2019-08-29 13:15
閱讀 1297·2019-08-26 18:18
閱讀 1311·2019-08-26 13:44