透明背景不是元素透明度,只有设置了元素的透明度才会出现字体也会透明,所以颜色无论设为哪一种色彩都不是理想的。
常用灰色背景透明正确方法:
设置背景透明样式 .bg{ background-color: rgba(255,255,255,.5); },但是不支持ie低版本浏览器(ie8及以下);
设置背景图片为半透明png图片.bg{ background-image:url(touming.png);},兼容性较好,但是ie6浏览器下需要引用‘ie6下png图片透明插件’(例如:DD_belatedPNG)。但是微软已经宣布淘汰ie6浏览器,ie6已不再成为兼容调节的主流。
background:rgba(0,0,0,0.6);这种灰色背景不会被子元素继承。但是只支持高版本浏览器。
楼主是对整个登录 div 设置了opacity,因此整个登录框都是半透明的。
其实只需要给这个白色background的登录框改一下background-color就可以了:
.login{
background-color: rgba(255,255,255,.5);
}
背景的圆角矩形用带透明通道的rgba颜色代替opacity,opacity会自动继承给子元素。
可以使用css rgba通道
例如