html - css3 border-image的透明png问题

标签 html png transparency css

我将 border-image 与具有透明部分的 PNG 图像一起使用。问题是 div 将 background-color 设置为黑色。当我应用 border-radius 时,图案的透明部分显示 div 的黑色,而不是包含 div 的元素的背景。

如何让 border-radius 忽略 div 的颜色。以下是有问题的代码。

HTML

<header>
    <div  class="outerColumn">
        <div class="column clearfix">
            <h1>Company</h1>
            <nav>
                <ul>
                    <li><a href="#">Home</a></li>
                    <li><a href="#">Portfolio</a></li>
                    <li><a href="#">My Work</a></li>
                    <li><a href="#">About me</a></li>
                    <li><a href="#">Elements</a></li>
                    <li><a href="#">Contact</a></li>
                </ul>
            </nav>
        </div>
    </div>
</header>

CSS

body > header {
   position:fixed;
   top:0;
   left:0;
   z-index:2;

   border-bottom:10px solid #0e0e0e;
   -moz-border-image: url(../images/header-background-pattern.gif) 0 0 10 0 repeat;
   -webkit-border-image: url(../images/header-background-pattern.gif) 0 0 10 0 repeat;
   border-image: url(../images/header-background-pattern.gif) 0 0 10 0 repeat;
}


header, footer {
   width:100%;
   background-color:#0e0e0e;
   clear:both;
}

最佳答案

可以将background-clip设置为padding-box来设置背景色大小为padding box without border:

-moz-background-clip: padding;
-webkit-background-clip: padding;
background-clip: padding-box;

参见 http://css-tricks.com/transparent-borders-with-background-clip/了解更多信息。

关于html - css3 border-image的透明png问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4052295/

相关文章:

javascript - 如何从页面中删除每个监听器?

html - 如何将 <li> 置于灵活的结构中?

python - 在 Python 中使用 PIL 读取 PNG

error-handling - .PNG似乎可以在某些浏览器中使用,但不能在所有浏览器中使用

具有透明背景的 iOS 应用程序图标在设备上显示黑色背景

javascript - 以 Angular 向元素添加调整大小功能

php - 使用 PHP GD 展平多个透明 PNG

java - 如何在调整 BufferedImage java 后删除黑色背景

javascript - 在 HTML5 中设置透明颜色

html - 我可以有一个没有链接的导航元素吗?