css中引入svg来兼容部分安卓机实例

本文主要和大家介绍了css中引入svg来兼容部分安卓机显示0.5px边框的示例的相关资料,小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧,希望能帮助到大家。

前言

在开发 H5 页面的时候发现,部分安卓机的原生浏览器不兼容 0.5px 的 border ,这时候就很闹心了,如下所示代码:

input {  border-bottom: 0.5px solid #DCDCDC;}

登录后复制

使用 rem 改进

后面想到了用 rem 的方式,因为 H5 页面借鉴了手淘的响应式像素,根据移动设备的 dpi 设定了根元素的 font-size 大小,所以几乎所有的 px 都改成了 rem 作为单位,这样可以更好地去实现移动端的响应式像素以及 Retina 屏幕上的表现。代码如下:

立即学习“前端免费学习笔记(深入)”;

input {  /* 47 是页面根元素的 font-size 大小 */  border-bottom: calc(1rem/47) solid #DCDCDC;}

登录后复制

测试中有部分机型完美展示了,但是有部分还是不显示,网上有帖子说可以利用伪元素 :before 和 :after 进行 1px 的表现,然后利用 transform: scaleY(0.5); 进行高度上的调整,思路很好,但奶奶个熊 input 元素不支持伪元素。

最后,物色到了一个很妙的方法:在 CSS 中使用 svg!

css 中引入 svg 来改进

具体思路是为元素加上 background-image ,然后把 svg 置为图片类型,因为 svg 上的 1px 就是实实在在的只占 1 个物理像素。

实现很简单,代码如下:

input {  background-image: url("data:image/svg+xml;utf8,") ;}

登录后复制

倒腾不止于此,利用 php 代码把 svg 的 xml 代码转成 base64 格式再试试:

<?php   echo base64_encode("");?>

登录后复制

输出如下:

PHN2ZyB4bWxucz0naHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmcnIHdpZHRoPScxMDAlJyBoZWlnaHQ9JzEwMCUnPjxsaW5lIHgxPScwJyB5MT0nMTAwJScgeDI9JzEwMCUnIHkyPScxMDAlJyBzdHJva2U9JyNkY2RjZGMnIHN0cm9rZS13aWR0aD0nMScvPjwvc3ZnPg== 

再引入到 css 的 background-image 中:(注意原 utf8 要改成 base64 )

input {  background-image: url("data:image/svg+xml;base64,PHN2ZyB4bWxucz0naHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmcnIHdpZHRoPScxMDAlJyBoZWlnaHQ9JzEwMCUnPjxsaW5lIHgxPScwJyB5MT0nMTAwJScgeDI9JzEwMCUnIHkyPScxMDAlJyBzdHJva2U9JyNkY2RjZGMnIHN0cm9rZS13aWR0aD0nMScvPjwvc3ZnPg==") ;}

登录后复制

相关推荐:

SVG和Vanilla JS框架创建一个“星形变心形”代码分享

SVG和Vanilla JS框架创建一个“星形变心形”代码分享

SVG和Vanilla JS框架创建一个“星形变心形”代码分享

以上就是css中引入svg来兼容部分安卓机实例的详细内容,更多请关注【创想鸟】其它相关文章!

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至253000106@qq.com举报,一经查实,本站将立刻删除。

发布者:PHP中文网,转转请注明出处:https://www.chuangxiangniao.com/p/2900108.html

(0)
上一篇 2025年3月10日 23:53:34
下一篇 2025年3月10日 23:53:48

AD推荐 黄金广告位招租... 更多推荐

相关推荐

  • CSS实现动态气泡背景代码分享

    本文主要和大家介绍了css 动画实现动态气泡背景的方法的相关资料,小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧,希望能帮助到大家。 今天的第一个任务是写个登录页面,老大给了我一个参(chao)考(xi)案例,大…

    2025年3月10日
    200
  • css3实现圆形旋转倒计时代码分享

    很多答题的h5界面上有旋转倒计时的效果,一个不断旋转减少的动画,类似于下图的这样。本文主要和大家介绍了css3 实现圆形旋转倒计时功能,需要的朋友可以参考下,希望能帮助到大家。 今天研究了下,可以通过border旋转得到。一般我们可以通过b…

    2025年3月10日
    200
  • html和csss实现简单博客代码分享

    本文主要和大家分享html和csss实现简单博客代码,希望能帮助大家用HTML和css完成一个简单的博客。 过度动画 -webkit-transition: color 200ms;  -o-transition: color 200ms;…

    编程技术 2025年3月10日
    200
  • CSS内边距外边距代码详解

    本文主要和大家分享css之内边距与外边距,本文运用了多个实例与代码,希望能帮助到大家。 外边距: margin 左边距 margin-left:数值 | autoauto:即距离这个边最远的距离右边距: margin-right:数值 | …

    2025年3月10日 编程技术
    200
  • css垂直居中实现代码

    本文主要和大家分享css垂直居中实现代码,希望本文css代码能帮助到大家。 1.如果是单行文本, line-height 的值和height相等 案例如下: 立即学习“前端免费学习笔记(深入)”; .verticle{    height:…

    编程技术 2025年3月10日
    200
  • css鼠标悬浮图片遮罩效果实现代码

    本文主要和大家分享css鼠标悬浮图片遮罩效果实现代码,希望能帮助到大家。 css p>p{    background: rgba(255, 255, 255, 0);    transition: background 0.3s l…

    编程技术 2025年3月10日
    200
  • css选择器实例分享

    现在正在学习jquery的选择器的使用,与css中的大部分选择器有相同之处,这里对css的选择器做一个总结便于以后对比学习。 第一、元素选择器:           通配选择器:*{}       一般用于全局的消除浏览器自带效果     …

    2025年3月10日 编程技术
    200
  • css不固定宽高垂直居中的实现代码

    本文主要和大家分享css不固定宽高垂直居中的实现代码,希望能帮助到大家。一、父元素:display: flex;justify-content: center;align-items: center;二、父元素:position: rela…

    编程技术 2025年3月10日
    200
  • 几种CSS清除浮动的方法分享

    本文主要和大家分享几种CSS清除浮动的方法,希望能帮助到大家。 1、父级p定义height  .p1{background:#000080;border:1px solid red;height:200px;} .left{float:le…

    编程技术 2025年3月10日
    200
  • css修改下拉列表select默认样式的实例

    select的一些默认样式我们很难修改,比如图标的替换。接下来就说说如何修改这些默认样式,希望本文能帮助到大家。 给select添加父元素p目的是为了,用p的样式覆盖住select样式。 css代码: p{ //用p的样式代替select的…

    编程技术 2025年3月10日
    200

发表回复

登录后才能评论