当前位置: 首页 > 知识库问答 >
问题:

带有透明图像的CSS边框图像在Android上显示边缘

公西永嘉
2023-03-14

此页http://wildlife.x-tremeteam.com利用CSS边框图像属性和。带有透明边缘的png图像,可在我的div上创建“撕裂的纸张”外观。除了在我的Android(三星SIII)上,无论我使用的是它的默认浏览器还是Chrome应用程序,它都工作得很好。在这一点上,我可以看到在20px边界的内部和外部都有一个轻微的边缘。有趣的是,我看不到角落的边缘。带边框的div的背景是透明的。我只对其中的div应用背景色。

我桌面上的浏览器、我用于测试的iPhone以及responsinator.com上的所有渲染都不会显示图像的边缘。

它一定与div的background color属性有关,因为如果我将其设置为红色,则边确实会变成红色。但是,使此属性透明不会将其删除。

CSS如下所示,其中还包括一个没有帮助的默认div属性:

div {border: 0; border-style: none; }

.BoxGrunge {  
    border-color: #7777777; /* this won't really be seen */
    border-style: double;/* this won't really be seen */
    border-width: 20px 20px 20px 20px;
    -webkit-border-image: url(images/RippedEdgeWhiteTrans.png) 20 20 20 20 repeat;
    -moz-border-image: url(images/RippedEdgeWhiteTrans.png) 20 20 20 20 repeat;
    border-image: url(images/RippedEdgeWhiteTrans.png) 20 20 20 20 repeat;
    background-color: transparent; /* otherwise there is a white edge on Android */  /*THIS DOESN'T HELP */
    display: block !important;
    margin: 0 0 5px 0;
}

谢谢,我已经盯着这个看了几个小时了,想不通。

共有1个答案

澹台胜
2023-03-14

我终于自己找到了。主要地

它是边框图像属性的重复值。

在对不同颜色的图像和div进行了多次测试后,我意识到所有四个边(不是角)在另一个方向上也略有重复/错误。因此,当我的图像是一个外部边缘透明的橙色框时,外部边缘重复了一小块橙色。这并没有发生在iPhone6上,只有Android和可能较旧的iPhone。

换句话说,对于顶部,图像会根据需要水平重复。但它也只是在垂直方向上重复了一点点。我猜这是某种Android错误。

我通过使用STRETCH代替较小的媒体查询来修复它。我不喜欢它,但这就是成功的原因。

 类似资料:
  • 为了实现丰富多彩的边框效果,在CSS3中,新增了 border-image属性,这个新属性允许指定一幅图像作为元素的边框。该属性的优点是,可以根据一些简单的规则,把一幅图像划分为 9 个单独的部分,浏览器会自动使用合适的部分作为边框的对应部分。 需要注意的是,只有当 border-style属性取值为 none 时,border-image属性才会有效。所以,如果定义的边框图像显示不出来,首先需要

  • 我试着让两个div相邻,它们之间有一个对角线空间。我在stackoverflow上看到过多个关于对角线div的教程,但它们都是通过为带有纯色的div使用两个边框并使用它们创建的对角线来实现的。但我想要图片/背景图像,而不是纯色。甚至可能还有其他内容,比如在对角线下的文本。当使用边框时,这是不可能的,因为边框在div之外。(floatright隐藏溢出或其他内容。) 这里有人能给我一个提示如何实现这

  • #klem1,#klem2 { opacity:0.4; filter:alpha(opacity=40); /* For IE8 and earlier */ } #klem1:hover,#klem2:hover { opacity:1.0; filter:alpha(opacity=100); /* For IE8 and earlier */ } div.background { widt

  • 我要做什么::我想使用我当前的实现为圆形图像添加一个黑色边框,如何在不使用第三方库的情况下实现这一点 全面转变。JAVA

  • 你好,我正在尝试使用flex均匀地分配额外的可用宽度的div框之间的图像之间的边距。我试过使用弹性基础:30%;然而,它不是均匀地分配图像的边距,而是将图像垂直地堆叠在彼此的顶部。 null null

  • 问题内容: 我在弄清楚为什么在使用chrome而不是firefox或ie9时为什么#screen元素的边框半径消失了? 对于每个浏览器,我都有所有不同的前缀以及标准的border-radius: 保存图片的上方内容框称为#screen 屏幕css的副本粘贴: 是因为chrome无法正确处理图像的“裁剪”吗?我认为这只是一个问题,当您在圆角容器中包含实际标签时,而不是通过css将img称为背景图像时