亚洲精品久久久中文字幕-亚洲精品久久片久久-亚洲精品久久青草-亚洲精品久久婷婷爱久久婷婷-亚洲精品久久午夜香蕉

您的位置:首頁技術文章
文章詳情頁

html - 關于CSS實現border的0.5px設置?

瀏覽:144日期:2023-01-12 16:42:20

問題描述

網上看到的代碼,有些不理解的地方:

.custom-border{ width:200px; margin:10px auto; height:100px; border:1px solid #333; background-color:#eee; padding:10px;}.scale-border{ margin:10px auto; height:100px; position:relative; padding:10px; width: 200px;}.border{ -webkit-transform:scale(0.5); transform:scale(0.5); position:absolute; border:1px solid #333; top:-50%; right:-50%; bottom:-50%; left:-50%; border-radius: 10px; background-color:#eee;}.content{ position:relative; z-index:2;}<p class='custom-border border-color'>邊框寬度1px</p><p class='scale-border'> <p class='content'>邊框寬度0.5px</p> <p class='border border-color'></p></p>

請問在這里CSS代碼中的

top:-50%;right:-50%;bottom:-50%;left:-50%;

是什么意思?實現這個0.5px的邊框的原理是什么?btw,transform:scale是不是在項目中挺少用到的?百度了好久關于scale 的詳細用法甚少。。

問題解答

回答1:

其實主要是scale(0.5)把它縮小到0.5px;然后利用

top:-50%;right:-50%;bottom:-50%;left:-50%;

去把它變大到原來的大小。但是這個變大并不影響邊框的大小;

回答2:

首先 transform:scale(0.5); 表示縮放1/2的意思,就會變成這樣(黑色外邊框是特意加上去對比的):

html - 關于CSS實現border的0.5px設置?

因為對于縮放而言是整體縮小。所以呢,縮小以后,又需要把她拉回原來的大小,這樣看起來才像0.5px的邊框,即:

top:-50%;right:-50%;bottom:-50%;left:-50%;

感覺多加一個 <p> 來表示0.5px的大小,并不優雅,于是改寫這樣:

.custom-border{ width:200px; margin:10px auto; height:100px; border:1px solid #333; background-color:#eee; padding:10px;}.scale-border{ margin:10px auto; height:100px; position:relative; padding:10px; width: 200px;}.scale-border::after{ content: ’ ’; -webkit-transform:scale(0.5); transform:scale(0.5); position:absolute; border:1px solid #333; top:-50%; right:-50%; bottom:-50%; left:-50%; border-radius: 10px; background-color:#eee;}.content{ position:relative; z-index:2;}

<p class='custom-border border-color'>邊框寬度1px</p><p class='scale-border'> <p class='content'>邊框寬度0.5px</p></p>回答3:

是為了放大到原始.scale-border的兩倍大小。因為.border是絕對定位(position:absolute;),所以其定位是根據其最近的非position:static來定的,而.scale-border是相對定位的(position:relative;),所以

top:-50%;right:-50%;bottom:-50%;left:-50%;

就是.border以.scale-border的中心為中心,放大到兩倍,然后再ransform:scale(0.5);縮小到1/2,那就和.scale-border一樣大小了。此時的 1px border,就變為 0.5px。

transform應該可以放心使用。

回答4:

兄弟,看這個你就明白了。https://developer.mozilla.org...

標簽: HTML
相關文章:
主站蜘蛛池模板: 日本aaaa特级毛片 | 国产污视频 | 亚洲精品区一区二区三区四 | 欧美成人h版影片在线观看 欧美成人h版影院在线播放 | 日本亚洲一区二区三区 | 91视频综合 | 女人182毛片a级毛片 | 久久精品视频一区二区三区 | 亚洲高清视频网站 | 亚洲天堂一区二区三区四区 | 热re99久久国产精品 | 一级免费黄色 | 免费看国产精品久久久久 | 亚洲精品αv一区二区三区 亚洲精品不卡 | www.污网站| 欧美在线视频一区二区三区 | 国美女福利视频午夜精品 | 国产玖玖视频 | 日本特黄色大片 | 美美女高清毛片视频黄的一免费 | 日韩在线观看一区二区不卡视频 | 日韩欧美一区二区久久 | 亚色图| 成人看的一级毛片 | 香蕉在线视频观看 | 91破解版在线 | 亚洲 | 久久国产精品久久国产精品 | 亚洲高清视频在线观看 | 欧美一级毛片一级 | 日本a黄色片| 草逼视频网址 | 免费欧美黄色网址 | ww亚洲ww在线观看国产 | 欧美男女激情 | 一级aaa级毛片午夜在线播放 | 亚洲国产成人超福利久久精品 | 国产一级做a爱片久久毛片a | 青草视频免费观看 | 亚洲美女网站 | 精品亚洲欧美高清不卡高清 | 91麻豆麻豆 |