国产xxxx99真实实拍_久久不雅视频_高清韩国a级特黄毛片_嗯老师别我我受不了了小说

資訊專欄INFORMATION COLUMN

移動端border:1px問題解決方案

explorer_ddf / 2216人閱讀

摘要:問題描述為了適配各種屏幕,我們寫代碼時一般使用設備獨立像素來對頁面進行布局。對此有如下解決方案這種方式可以滿足各種場景。

問題描述:

為了適配各種屏幕,我們寫代碼時一般使用設備獨立像素來對頁面進行布局。
而在設備像素比大于 1的屏幕上,我們寫的 1px實際上是被多個物理像素渲染,這就會出現 1px在有些屏幕上看起來很粗的現象。

對此有如下解決方案:

@mixin border-1px($color, $direction) {
  position: relative;

  &::before {
    content: "";
    position: absolute;
    z-index: 1;

    @if $direction==all {
      left: 0;
      top: 0;
      border: 1px solid $color;
      box-sizing: border-box;
      transform-origin: left top;
    }

    @else {
      background-color: $color;

      @if $direction==top {
        left: 0;
        top: 0;
        width: 100%;
        height: 1px;
      }

      @if $direction==right {
        right: 0;
        top: 0;
        width: 1px;
        height: 100%;
      }

      @if $direction==bottom {
        left: 0;
        bottom: 0;
        width: 100%;
        height: 1px;
      }

      @if $direction==left {
        left: 0;
        top: 0;
        width: 1px;
        height: 100%;
      }
    }
  }
}

@each $direction in all,
top,
right,
bottom,
left {
  @for $i from 1 to 10 {
    $scale: 1 / $i;

    @media only screen and (-webkit-min-device-pixel-ratio:$i) {
      .border-1px-#{$direction}::before {
        @if $direction==all {
          width: $i * 100%;
          height: $i * 100%;
          transform: scale($scale);
        }

        @if $direction==top {
          transform: scaleY($scale);
        }

        @if $direction==bottom {
          transform: scaleY($scale);
        }

        @if $direction==right {
          transform: scaleX($scale);
        }

        @if $direction==left {
          transform: scaleX($scale);
        }
      }
    }
  }
}

這種方式可以滿足各種場景。

使用方式:

第一步:@include border-1px(blue, all);引入由mixin定義的代碼塊(創建偽類 模擬border)
第二步:

添加border-1px-#{$direction}類名(縮放尺寸)

*注:

為何沒有直接對border-width直接操作 是因為有部分機型不支持0.5px這樣的值 會被當成0來處理 故用縮放來實現。

文章版權歸作者所有,未經允許請勿轉載,若此文章存在違規行為,您可以聯系管理員刪除。

轉載請注明本文地址:http://specialneedsforspecialkids.com/yun/114940.html

相關文章

  • 移動H5頁面中1px邊框的幾種解決方法

    問題提出 這是一個比較老的問題了,我第一次注意到的時候,是UI設計師來找我麻煩,emmm那時候我才初入前端職場,啥也不懂啊啊啊啊啊,情形是這樣的:設計師拿著手機過來:這些邊框都粗了啊,我的設計稿上是1px的我:????我寫的是1px呀,不信你看。(說著拿出了css代碼設計師:不對啊我眼睛看來這個邊框比我設計稿上粗很多,看起來好奇怪(emmm果然像素眼我:那我把它改成0.5px你看看(邊說邊改了代碼...

    enda 評論0 收藏0
  • 移動H5頁面中1px邊框的幾種解決方法

    問題提出 這是一個比較老的問題了,我第一次注意到的時候,是UI設計師來找我麻煩,emmm那時候我才初入前端職場,啥也不懂啊啊啊啊啊,情形是這樣的:設計師拿著手機過來:這些邊框都粗了啊,我的設計稿上是1px的我:????我寫的是1px呀,不信你看。(說著拿出了css代碼設計師:不對啊我眼睛看來這個邊框比我設計稿上粗很多,看起來好奇怪(emmm果然像素眼我:那我把它改成0.5px你看看(邊說邊改了代碼...

    shengguo 評論0 收藏0

發表評論

0條評論

explorer_ddf

|高級講師

TA的文章

閱讀更多
最新活動
閱讀需要支付1元查看
<