更改Bootstrap导航栏不透明度而不影响按钮

时间:2013-01-24 03:23:12

标签: html css twitter-bootstrap opacity navbar

我只希望我的导航栏按钮可见,而横跨整个页面的实际条形图具有完全不透明度。每当我更改导航栏的不透明度时,它都会影响其中的类,即使我指定这些类没有不透明度。

我发布了一张我想要复制的图片。如您所见,链接显示为完整,但导航栏不可见,允许显示完整的背景图像。它可能看起来像一个坚固的红色条,但我向你保证它是一个看不见的导航栏。

enter image description here

任何帮助都将非常感激!感谢。


这是我的导航栏HTML代码:

<div class="custom_nav">
    <div class="navbar navbar-fixed-top">
        <div class="navbar-inner">
            <div class="container">
                <a class="btn btn-navbar" data-toggle="collapse" data-target=".nav-collapse">
                <span class="icon-bar"></span>
                <span class="icon-bar"></span>
                <span class="icon-bar"></span>
                </a>
                <a class="brand" href="index.html">Homegrown</a>
            <div class="nav-collapse">
                <ul class="nav nav-pills">
                    <li class="active"><a href="index.html">Home</a></li>
                    <li><a href="index.html">About</a></li>
                    <li><a href="index.html">Contact</a></li>
                </ul><!-- /.nav -->
            </div><!--/.nav-collapse -->
            </div><!-- /.container -->
        </div><!-- /.navbar-inner -->
    </div><!-- /.navbar -->
</div><!--/.custom_nav-->

到目前为止,我已尝试使用以下内容编辑CSS:

ul .nav .nav-pills {background:rgba(255,255,255,0.5)}

.custom_nav {
    .navbar.navbar-fixed-top {
        background:rgba(255,255,255,.5);
    }
    .navbar .nav > .active a, .navbar .nav > .active a:hover, .navbar .nav > li a:hover {
        background:rgba(210,105,30, 0); text-shadow:none;
    }   
}

3 个答案:

答案 0 :(得分:15)

一种解决方案是使用rbga作为给定的hereIt does not work in ie < 9

.custom_nav .navbar.navbar-fixed-top .navbar-inner{
    background: rgba(255, 255, 255, 0.3);
}

Fiddle

答案 1 :(得分:1)

要更改父级的不透明度而不影响子级的不透明度,请在background属性上使用rgba,如下所示:

ul {
  background: rgba(255, 255, 255, 0.7);
}

前3个值是构成颜色的RGB值,最后一个值是颜色的不透明度(在上例中,不透明度为70%)。

请参阅DEMO

答案 2 :(得分:0)

我用stylu写了一个mixin:

support-for-ie ?= true

opacity(n)
  opacity n
  -moz-opacity n
  filter unquote('alpha(opacity=' + round(n * 100) + ')')
  if support-for-ie
    filter unquote('progid:DXImageTransform.Microsoft.Alpha(Opacity=' + round(n * 100) + ')')

.opacity-70
  opacity(0.7)

我希望它可以帮助那些想要支持几乎所有浏览器的不透明度的人 认为