久久精品国产亚洲高清|精品日韩中文乱码在线|亚洲va中文字幕无码久|伊人久久综合狼伊人久久|亚洲不卡av不卡一区二区|精品久久久久久久蜜臀AV|国产精品19久久久久久不卡|国产男女猛烈视频在线观看麻豆

    1. <style id="76ofp"></style>

      <style id="76ofp"></style>
      <rt id="76ofp"></rt>
      <form id="76ofp"><optgroup id="76ofp"></optgroup></form>
      1. 千鋒教育-做有情懷、有良心、有品質(zhì)的職業(yè)教育機(jī)構(gòu)

        手機(jī)站
        千鋒教育

        千鋒學(xué)習(xí)站 | 隨時(shí)隨地免費(fèi)學(xué)

        千鋒教育

        掃一掃進(jìn)入千鋒手機(jī)站

        領(lǐng)取全套視頻
        千鋒教育

        關(guān)注千鋒學(xué)習(xí)站小程序
        隨時(shí)隨地免費(fèi)學(xué)習(xí)課程

        當(dāng)前位置:首頁(yè)  >  技術(shù)干貨  > 如何解決1px問(wèn)題?

        如何解決1px問(wèn)題?

        來(lái)源:千鋒教育
        發(fā)布人: wjy
        時(shí)間: 2022-09-07 16:56:56 1662541016

        1px 問(wèn)題指的是:在一些 Retina屏幕 的機(jī)型上,移動(dòng)端頁(yè)面的 1px 會(huì)變得很粗,呈現(xiàn)出不止 1px 的效果。原因很簡(jiǎn)單——CSS 中的 1px 并不能和移動(dòng)設(shè)備上的 1px 劃等號(hào)。它們之間的比例關(guān)系有一個(gè)專門的屬性來(lái)描述:

        打開 Chrome 瀏覽器,啟動(dòng)移動(dòng)端調(diào)試模式,在控制臺(tái)去輸出這個(gè) devicePixelRatio 的值。這里選中 iPhone6/7/8 這系列的機(jī)型,輸出的結(jié)果就是2:

        這就意味著設(shè)置的 1px CSS 像素,在這個(gè)設(shè)備上實(shí)際會(huì)用 2 個(gè)物理像素單元來(lái)進(jìn)行渲染,所以實(shí)際看到的一定會(huì)比 1px 粗一些。 解決1px 問(wèn)題的三種思路:

        思路一:直接寫 0.5px

        如果之前 1px 的樣式這樣寫:

        可以先在 JS 中拿到 window.devicePixelRatio 的值,然后把這個(gè)值通過(guò) JSX 或者模板語(yǔ)法給到 CSS 的 data 里,達(dá)到這樣的效果(這里用 JSX 語(yǔ)法做示范):

        然后就可以在 CSS 中用屬性選擇器來(lái)命中 devicePixelRatio 為某一值的情況,比如說(shuō)這里嘗試命中 devicePixelRatio 為2的情況:

        直接把 1px 改成 1/devicePixelRatio 后的值,這是目前為止最簡(jiǎn)單的一種方法。這種方法的缺陷在于兼容性不行,IOS 系統(tǒng)需要8及以上的版本,安卓系統(tǒng)則直接不兼容。

         

        思路二:偽元素先放大后縮小

        這個(gè)方法的可行性會(huì)更高,兼容性也更好。唯一的缺點(diǎn)是代碼會(huì)變多。

        思路是先放大、后縮?。涸谀繕?biāo)元素的后面追加一個(gè) ::after 偽元素,讓這個(gè)元素布局為 absolute 之后、整個(gè)伸展開鋪在目標(biāo)元素上,然后把它的寬和高都設(shè)置為目標(biāo)元素的兩倍,border值設(shè)為 1px。接著借助 CSS 動(dòng)畫特效中的放縮能力,把整個(gè)偽元素縮小為原來(lái)的 50%。此時(shí),偽元素的寬高剛好可以和原有的目標(biāo)元素對(duì)齊,而 border 也縮小為了 1px 的二分之一,間接地實(shí)現(xiàn)了 0.5px 的效果。

        代碼如下:

        思路三:viewport 縮放來(lái)解決

        tags:
        聲明:本站稿件版權(quán)均屬千鋒教育所有,未經(jīng)許可不得擅自轉(zhuǎn)載。
        10年以上業(yè)內(nèi)強(qiáng)師集結(jié),手把手帶你蛻變精英
        請(qǐng)您保持通訊暢通,專屬學(xué)習(xí)老師24小時(shí)內(nèi)將與您1V1溝通
        免費(fèi)領(lǐng)取
        今日已有369人領(lǐng)取成功
        劉同學(xué) 138****2860 剛剛成功領(lǐng)取
        王同學(xué) 131****2015 剛剛成功領(lǐng)取
        張同學(xué) 133****4652 剛剛成功領(lǐng)取
        李同學(xué) 135****8607 剛剛成功領(lǐng)取
        楊同學(xué) 132****5667 剛剛成功領(lǐng)取
        岳同學(xué) 134****6652 剛剛成功領(lǐng)取
        梁同學(xué) 157****2950 剛剛成功領(lǐng)取
        劉同學(xué) 189****1015 剛剛成功領(lǐng)取
        張同學(xué) 155****4678 剛剛成功領(lǐng)取
        鄒同學(xué) 139****2907 剛剛成功領(lǐng)取
        董同學(xué) 138****2867 剛剛成功領(lǐng)取
        周同學(xué) 136****3602 剛剛成功領(lǐng)取
        相關(guān)推薦HOT
        軟件定制開發(fā)中的敏捷開發(fā)是什么?

        軟件定制開發(fā)中的敏捷開發(fā)是什么軟件定制開發(fā)中的敏捷開發(fā),從宏觀上看,是一個(gè)高度關(guān)注人員交互,持續(xù)開發(fā)與交付,接受需求變更并適應(yīng)環(huán)境變化...詳情>>

        2023-10-14 13:24:57
        什么是PlatformIo?

        PlatformIO是什么PlatformIO是一個(gè)全面的物聯(lián)網(wǎng)開發(fā)平臺(tái),它為眾多硬件平臺(tái)和開發(fā)環(huán)境提供了統(tǒng)一的工作流程,有效簡(jiǎn)化了開發(fā)過(guò)程,并能兼容各種...詳情>>

        2023-10-14 12:55:06
        云快照與自動(dòng)備份有什么區(qū)別?

        1、定義和目標(biāo)不同云快照的主要目標(biāo)是提供一種快速恢復(fù)數(shù)據(jù)的方法,它只記錄在快照時(shí)間點(diǎn)后的數(shù)據(jù)變化,而不是所有的數(shù)據(jù)。自動(dòng)備份的主要目標(biāo)...詳情>>

        2023-10-14 12:48:59
        服務(wù)器為什么要用Linux?

        服務(wù)器為什么要用Linux作為服務(wù)器操作系統(tǒng)的優(yōu)選,Linux在眾多選擇中脫穎而出。Linux作為服務(wù)器操作系統(tǒng)的優(yōu)選,有其獨(dú)特的優(yōu)勢(shì)和特點(diǎn)。包括其...詳情>>

        2023-10-14 12:34:11
        ORM解決的主要問(wèn)題是什么?

        ORM(對(duì)象關(guān)系映射)解決的主要問(wèn)題是將關(guān)系數(shù)據(jù)庫(kù)與面向?qū)ο缶幊讨g的映射困境。在傳統(tǒng)的關(guān)系數(shù)據(jù)庫(kù)中,數(shù)據(jù)以表格的形式存儲(chǔ),而在面向?qū)ο?..詳情>>

        2023-10-14 12:26:19
        快速通道
        南通市| 兴和县| 泰和县| 宁晋县| 静海县| 永城市| 遂溪县| 治县。| 灌云县| 黎平县| 通河县| 沂南县| 长泰县| 宕昌县| 浙江省| 南开区| 将乐县| 青神县| 三门峡市| 安庆市| 隆德县| 云阳县| 明星| 南宁市| 彰化市| 渝北区| 姚安县| 湖南省| 永安市| 陇西县| 海盐县| 望奎县| 桦甸市| 调兵山市| 二连浩特市| 古田县| 卓资县| 花莲县| 肇东市| 杭州市| 临邑县|