html - 我如何在我的导航栏上添加一个半透明的背景,同时在我的整个页面上有一个蓝色背景
问题描述
所以我的网站有这个背景。还有一个导航栏,上面有我的名字和其他一些东西。我想让这个导航栏的背景是半透明的,这样我就可以看到后面。我正在使用不透明度:0.5;但这使它变成了我不想要的白色。任何帮助,将不胜感激
解决方案
有几种方法可以实现 - 一个常见的解决方案是使用半透明的 PNG 文件来产生所需的效果。
但是,如果您不能使用 PNG(即,您需要使用 JPG)作为导航栏的背景,另一种方法是在导航栏上定义一个 伪元素。
您可以使用relative
和absolute
定位如下所示将这个伪元素放置在导航元素的内部和后面,并将应用样式应用opacity
到伪元素以实现透明效果:
body {
background:blue;
}
nav a {
color:red;
background:white;
}
nav {
padding:1rem;
box-sizing:content;
/* Required for correct pseudo element placement */
position:relative;
}
/* Define pseduo element for nav element */
nav::before {
content:"";
display:block;
position:absolute;
top:0;
left:0;
/* Stretch to fill nav */
width:100%;
height:100%;
/* Place behind nav content */
z-index:-1;
/* Set transparency */
opacity:0.5;
/* The background image */
background:url(https://i.imgur.com/BZ6HTf5.jpg);
}
<nav>
<a href="#">Menu item</a>
<a href="#">Menu item</a>
<a href="#">Menu item</a>
</nav>
推荐阅读
- python - 如何根据现有列中的值更改列值或在新列中创建值?
- c# - FakeItEasy 和匹配的匿名类型
- javascript - Materialize 和 Bootstrap 输入字段缓存最后一个状态并且不尊重我选择的状态
- r - 在ggplot中为线条的一部分使用不同的颜色
- pyspark - 使用 pyspark 模块中的函数时峰度是否过高?
- php - Woocommerce 新订单然后保存
- c# - 从 Dotfuscator 迁移到 .NET Reactor - 支持哪些混淆属性?
- json - 无法为 Cloudformation 的 Elasticsearch 服务添加细粒度访问
- ruby-on-rails - 如何确保 ActiveStorage URL 实际过期?
- r - RasterStack 数学和条件语句的限制