iis服务器助手广告广告
返回顶部
首页 > 资讯 > 精选 >如何解决移动端1px边框
  • 420
分享到

如何解决移动端1px边框

2023-06-08 03:06:43 420人浏览 薄情痞子
摘要

这篇文章主要介绍了如何解决移动端1px边框,具有一定借鉴价值,感兴趣的朋友可以参考下,希望大家阅读完这篇文章之后大有收获,下面让小编带着大家一起了解一下。在移动端开发时,经常会遇到在视网膜屏幕中元素边框变粗的问题。1px 边框问题的由来苹果

这篇文章主要介绍了如何解决移动端1px边框,具有一定借鉴价值,感兴趣的朋友可以参考下,希望大家阅读完这篇文章之后大有收获,下面让小编带着大家一起了解一下。

在移动端开发时,经常会遇到在视网膜屏幕中元素边框变粗的问题。

1px 边框问题的由来

苹果 iPhone4 首次提出了 Retina Display(视网膜屏幕)的概念,在 iPhone4 使用的视网膜屏幕中,把 2x2 个像素当 1 个物理像素使用,即使用 2x2 个像素显示原来 1 个物理像素显示的内容,从而让 UI 显示更精致清晰,这 2x2 个像素叫做逻辑像素。像这种像素比(像素比(即dpr)= 物理像素 / 逻辑像素)为 2 的视网膜屏幕也被称为二倍屏,目前市面上还有像素比更高的三倍屏、四倍屏。而 CSS 中 1px 指的是物理像素,因此,设置为 1px 的边框在 dpr = 2 的视网膜屏幕中实际占用了 2 个逻辑像素的宽度,这就导致了界面边框变粗的视觉体验。

使用 transform 解决

通过设置元素的 box-sizing 为 border-box,然后构建伪元素,再使用 css3 的 transfORM 缩放,这是目前市面上最受推崇的解决方法。这种方法可以满足所有的场景,而且修改灵活,唯一的缺陷是,对于已使用伪元素的元素要多嵌套一个无用元素。具体的实现如下:

.one-pixel-border {  position: relative;  box-sizing: border-box;}.one-pixel-border::before {  display: block;  content: "";  position: absolute;  top: 50%;  left: 50%;  width: 200%;  height: 200%;  border: 1px solid red;  transform: translate(-50%, -50%) scale(0.5, 0.5);}

这样就可以得到 0.5px 的边框。

还可以结合媒体查询(@media)解决不同 dpr 值屏幕的边框问题,如下:

@media screen and (-WEBkit-min-device-pixel-ratio: 2), (min-resolution: 2dppx) {  ...}@media screen and (-webkit-min-device-pixel-ratio: 3), (min-resolution: 3Dppx) {  ...}

注意:iOS 系统的 safari 浏览器不支持标准的 min-resolution,使用非标准的 min-device-pixel-ratio。

使用 pixel-border.css 解决

pixel-border.css是一个解决移动端 1px 边框的通用 CSS 工具。使用 transform 的解决方法,仅有几行的源码,使用起来非常方便,是目前发现最好的解决方法。

安装

npm安装:

npm install pixel-border --save

yarn安装:

yarn add pixel-border

浏览器安装,建议安装压缩后的版本:

<link rel="stylesheet" href="path/to/pixel-border.min.css"><link>

使用

pixel-border 通过元素的 ::before 伪元素使用 transform 缩放为元素设置边框。因此,你可以使用原生的 CSS 边框属性为原素设置边框,只需要在元素上添加一个 pixel-border 或 pixel-border="true" 的属性,并设置元素的 border-style 值即可。如下会创建一个单像素边框:

<div pixel-border style="border-style: solid;">单像素边框</div>

注意:pixel-border已为元素的边框设置为固定值 1px,因此不要为元素再设置 border-width,并且元素的 box-sizing 值被设置为 border-box,请不要重置为其他类型的值。

设置任意边框:

设置元素某一边的边框时,只需为元素设置 border-top-style、border-bottom-style、border-left-style、border-right-style 其中一项的值,并设置元素 border-color 的值即可。如下设置上边边框:

<style>  .border-top {    border-top-style: solid;    border-top-color: red;  }</style><div class="border-top" pixel-border>上边框</div>

设置圆角边框:

当需要圆角边框时,始终为 border-radius 设置百分比值。如下:

<style>  .border-radius {    width: 100px;    height: 100px;    border-style: solid;    border-color: red;    border-radius: 10%;  }</style><div class="border-radius" pixel-border>圆角边框</div>

感谢你能够认真阅读完这篇文章,希望小编分享的“如何解决移动端1px边框”这篇文章对大家有帮助,同时也希望大家多多支持编程网,关注编程网精选频道,更多相关知识等着你来学习!

--结束END--

本文标题: 如何解决移动端1px边框

本文链接: https://www.lsjlt.com/news/251269.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

本篇文章演示代码以及资料文档资料下载

下载Word文档到电脑,方便收藏和打印~

下载Word文档
猜你喜欢
  • 如何解决移动端1px边框
    这篇文章主要介绍了如何解决移动端1px边框,具有一定借鉴价值,感兴趣的朋友可以参考下,希望大家阅读完这篇文章之后大有收获,下面让小编带着大家一起了解一下。在移动端开发时,经常会遇到在视网膜屏幕中元素边框变粗的问题。1px 边框问题的由来苹果...
    99+
    2023-06-08
  • 如何解决移动端1px边框的问题
    这篇文章主要为大家展示了“如何解决移动端1px边框的问题”,内容简而易懂,条理清晰,希望能够帮助大家解决疑惑,下面让小编带领大家一起研究并学习一下“如何解决移动端1px边框的问题”这篇文章吧。当然了,在这之...
    99+
    2024-04-02
  • 如何解决移动端Html5页面中1px边框的问题
    这篇文章将为大家详细讲解有关如何解决移动端Html5页面中1px边框的问题,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。问题提出这是一个比较老的问题了,我第一次注意到的时候,是UI设计师来找我麻烦,emm...
    99+
    2023-06-09
  • vue移动端UI框架如何实现QQ侧边菜单组件
    这篇文章主要为大家展示了“vue移动端UI框架如何实现QQ侧边菜单组件”,内容简而易懂,条理清晰,希望能够帮助大家解决疑惑,下面让小编带领大家一起研究并学习一下“vue移动端UI框架如何实现QQ侧边菜单组件...
    99+
    2024-04-02
  • PyQt5项目中无边框后窗口出现移动问题如何解决
    这篇文章将为大家详细讲解有关PyQt5项目中无边框后窗口出现移动问题如何解决,文章内容质量较高,因此小编分享给大家做个参考,希望大家阅读完这篇文章后对相关知识有一定的了解。判断鼠标左键是否被按下,如果按下则将flag设为True并获取当前的...
    99+
    2023-06-08
  • 如何实现移动端HTML5页面去掉input输入框的白色背景和边框
    这篇文章主要介绍如何实现移动端HTML5页面去掉input输入框的白色背景和边框,文中介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们一定要看完!效果:jsp 部分代码:<div> ...
    99+
    2024-04-02
  • 如何解决PC端和移动端自适应问题
    这篇文章主要介绍了如何解决PC端和移动端自适应问题,具有一定借鉴价值,感兴趣的朋友可以参考下,希望大家阅读完这篇文章之后大有收获,下面让小编带着大家一起了解一下。做网页时,我们通常需要考虑到不同电脑屏幕尺寸,以及不同手机屏幕大小等问题,解决...
    99+
    2023-06-08
  • 如何使用移动HTML5前端框架MUI
    小编给大家分享一下如何使用移动HTML5前端框架MUI,希望大家阅读完这篇文章之后都有所收获,下面让我们一起去探讨吧!一、 使用该框架之前的准备工作1. 新建含mui的HTML文件在Hbuilder中,新建...
    99+
    2024-04-02
  • 如何解决移动端吸顶fixbar的问题
    这篇文章主要介绍如何解决移动端吸顶fixbar的问题,文中介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们一定要看完!需求背景经常会有这样的需求,当页面滚动到某一个位置时,需要某个页面元素固定在屏幕顶部...
    99+
    2024-04-02
  • css3如何解决移动端卡顿的问题
    这篇文章主要介绍css3如何解决移动端卡顿的问题,文中介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们一定要看完!一、使用css,jquery,canvas制作动画Canvas优点:性能好,强大,支持多数浏览器(除了IE6、IE7、IE...
    99+
    2023-06-08
  • ubuntu18.04左边dock面板如何移动
    这篇文章给大家分享的是有关ubuntu18.04左边dock面板如何移动的内容。小编觉得挺实用的,因此分享给大家做个参考,一起跟随小编过来看看吧。ubuntu18.04系统中默认的dock面板是在左边,我们可以通过配置工具把面板放到底部来使...
    99+
    2023-06-13
  • 如何解决移动端悬浮层遮挡住内容
    本篇内容介绍了“如何解决移动端悬浮层遮挡住内容”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!在现在的前端页...
    99+
    2024-04-02
  • 如何解决移动端小图标模糊的问题
    这篇文章将为大家详细讲解有关如何解决移动端小图标模糊的问题,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。前言之前给大家讲到图片和文字垂直方向不对齐的问题,其中举的小例子中用到了一个小图标,这个小图标我用的...
    99+
    2023-06-08
  • 如何实现动画CSS边框
    这篇文章给大家分享的是有关如何实现动画CSS边框的内容。小编觉得挺实用的,因此分享给大家做个参考,一起跟随小编过来看看吧。动画CSS边框当我们想使我们的项目更可见时,该怎么办来给它做个动画!我们可以对我们的边框进行动画化处理,甚至在不改变元...
    99+
    2023-06-27
  • JSBridge框架如何解决通信问题以及实现移动端跨平台开发
    这期内容当中小编将会给大家带来有关JSBridge框架如何解决通信问题以及实现移动端跨平台开发,文章内容丰富且以专业的角度为大家分析和叙述,阅读完这篇文章希望大家可以有所收获。一、跨平台开发是趋势目前主流的移动端平台主要是Android和i...
    99+
    2023-06-05
  • 如何解决html5在移动端的屏幕适应问题
    这篇文章主要讲解了“如何解决html5在移动端的屏幕适应问题”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“如何解决html5在移动端的屏幕适应问题”吧! ...
    99+
    2024-04-02
  • 如何解决canvas在移动端绘制模糊的问题
    小编给大家分享一下如何解决canvas在移动端绘制模糊的问题,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一下吧!由于一些移动端的兼容性原因,我们某个项目需要前端将pdf...
    99+
    2023-06-09
  • 如何解决移动端HTML5音频与视频的问题
    小编给大家分享一下如何解决移动端HTML5音频与视频的问题,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一下吧!最近在研究用视频代替动画,用视频代替精灵动画,我们称这种视...
    99+
    2023-06-09
  • gitee移动端如何登录
    随着移动互联网的发展,移动端已经成为人们日常使用互联网的主要方式之一。与此同时,开源平台也在不断发展壮大。在国内,gitee以其开源共享、稳定高效等特点受到了广泛的欢迎和支持。本文将介绍gitee移动端如何登录,方便大家管理自己的开源项目。...
    99+
    2023-10-22
  • 移动端如何实现内滚动
    这篇文章主要为大家展示了“移动端如何实现内滚动”,内容简而易懂,条理清晰,希望能够帮助大家解决疑惑,下面让小编带领大家一起研究并学习一下“移动端如何实现内滚动”这篇文章吧。发现需求如果在一个区域内只允许部分区域产生滚动的效果,而其余部分不能...
    99+
    2023-06-08
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作