伪背景叠加文本之前和之后



所以我做了一些小标签:

https://jsfiddle.net/pkpy08wy/2/

它们在chrome上显示良好,甚至在iPad和iPhone上的safari上显示良好。但是在Mac上的野生动物园中,背景会覆盖文本。

有什么想法吗?

.address_tab {
    position: relative;
    display: inline-block;
    padding: 10px 30px 8px;
    color: #14528b;
    margin-left: 20px;
}
.address_tab::before {
    content: ''; /* To generate the box */
    position: absolute;
    top: 0; right: 0; bottom: 0; left: 0;
    z-index: -999;
    background: #d0d0d0;
    background: -webkit-linear-gradient(left, #d0d0d0, #e8e8e8);
    background: -o-linear-gradient(right, #d0d0d0, #e8e8e8);
    background: -moz-linear-gradient(right, #d0d0d0, #e8e8e8);
    background: linear-gradient(to right, #d0d0d0 , #e8e8e8);
    transform: perspective(4px) rotateX(1deg);
    border: 1px #b2b2b2 solid;
}
.address_tab::before {
    -webkit-border-top-left-radius: 10px;
    -webkit-border-top-right-radius: 10px;
    -moz-border-radius-topleft: 10px;
    -moz-border-radius-topright: 10px;
    border-top-left-radius: 10px;
    border-top-right-radius: 10px;
}
<div class="address_tab">
  Delivery Details
</div>

好的,所以我确实偶然发现了这篇文章 http://katydecorah.com/code/z-index-and-transform/它似乎可以解决您的问题。顺便说一下,这是一本很好的读物:)

这是为您提供的更新小提琴 https://jsfiddle.net/VilleKoo/a8zv69ka/

.address_tab {
   position: relative;
   display: inline-block;
   padding: 10px 30px 8px;
   color: #14528b;
   margin-left: 20px;
   transform-style: preserve-3d;
}
.address_tab::before {
   content: ''; /* To generate the box */
   position: absolute;
   top: 0; right: 0; bottom: 0; left: 0;
   background: #d0d0d0;
   background: -webkit-linear-gradient(left, #d0d0d0, #e8e8e8);
   background: -o-linear-gradient(right, #d0d0d0, #e8e8e8);
   background: -moz-linear-gradient(right, #d0d0d0, #e8e8e8);
   background: linear-gradient(to right, #d0d0d0 , #e8e8e8);
   transform: perspective(4px) rotateX(1deg) translateZ(-1px);
   border: 1px #b2b2b2 solid;
}
.address_tab::before {
   -webkit-border-top-left-radius: 10px;
   -webkit-border-top-right-radius: 10px;
   -moz-border-radius-topleft: 10px;
   -moz-border-radius-topright: 10px;
   border-top-left-radius: 10px;
   border-top-right-radius: 10px;
 }
<div class="address_tab">
  Delivery Details
</div>

相关内容