打开APP
userphoto
未登录

开通VIP,畅享免费电子书等14项超值服

开通VIP
css 背景透明,文字不透明,alpha滤镜,opacity,position:relat...

都知道,在alpha滤镜下,背景透明了,里面的文字也会跟随透明,我们可以设置内容的position为relative可以解决这个问题

但是在position为absolute这么做却没有效果,怎么解决呢,看代码:

 

  1. <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">  
  2. <html xmlns="http://www.w3.org/1999/xhtml">  
  3. <head>  
  4. <meta http-equiv="Content-Type" content="text/html; charset=gbk" />  
  5. <title>alpha</title>  
  6. <style type="text/css">  
  7. .alpha  
  8. {  
  9.  width:100px;  
  10.  height:100px;  
  11.  background-color:red;  
  12.  display:block;  
  13.  opacity: 0.35;  
  14.  filter: "alpha(opacity=35)";  
  15.  filter: alpha(opacity=35);  
  16.  -moz-opacity: 0.35;  
  17. }  
  18. </style>  
  19. </head><body>  
  20.     <div class="alpha">  
  21.      <div>文字显示</div>  
  22.     </div>  
  23. </body>  
  24. </html>  

这样显示的文字也是0.35的透明,修改代码如下:

  1. <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">  
  2. <html xmlns="http://www.w3.org/1999/xhtml">  
  3. <head>  
  4. <meta http-equiv="Content-Type" content="text/html; charset=gbk" />  
  5. <title>alpha</title>  
  6. <style type="text/css">  
  7. .alpha  
  8. {  
  9.  width:100px;  
  10.  height:100px;  
  11.  background-color:red;  
  12.  display:block;  
  13.  opacity: 0.35;  
  14.  filter: "alpha(opacity=35)";  
  15.  filter: alpha(opacity=35);  
  16.  -moz-opacity: 0.35;  
  17. }  
  18. </style>  
  19. </head>  
  20. <body>  
  21.     <div class="alpha">  
  22.      <div style="position:relative;"> 文字显示</div>  
  23.     </div>  
  24. </body>  
  25. </html>  


文字没有了不透明效果

这没什么,也不是我要说的重点

看这个

  1. <html xmlns="http://www.w3.org/1999/xhtml">  
  2. <head runat="server">  
  3.     <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />  
  4.     <title></title>  
  5.     <style type="text/css">  
  6.         .alpha50  
  7.         {  
  8.             opacity: 0.5;  
  9.             filter: "alpha(opacity=50)";  
  10.             filter: alpha(opacity=50);  
  11.             -moz-opacity: 0.5;  
  12.         }  
  13.   
  14.         .box  
  15.         {  
  16.             width: 173px;  
  17.             height: 163px;  
  18.             display: block;  
  19.             background-color: orange;  
  20.         }  
  21.   
  22.         .absolute  
  23.         {  
  24.             position: absolute;  
  25.             width: 173px;  
  26.             height: 30px;  
  27.             margin-top: 133px;  
  28.         }  
  29.   
  30.         .relative  
  31.         {  
  32.             position: relative;  
  33.         }  
  34.     </style>  
  35. </head>  
  36. <body>  
  37.     <form id="form1" runat="server">  
  38.         <div>  
  39.             <div class="box">  
  40.                 <div class="absolute alpha50">  
  41.                     <div class="relative">显示文字</div>  
  42.                 </div>  
  43.             </div>  
  44.         </div>  
  45.     </form>  
  46. </body>  
  47. </html>  


虽然设了relative,但文字还是透明的

反复试验 我发现修改代码顺序可以解决这个问题

如下:

  1. <html xmlns="http://www.w3.org/1999/xhtml">  
  2. <head runat="server">  
  3.     <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />  
  4.     <title></title>  
  5.     <style type="text/css">  
  6.         .alpha50  
  7.         {  
  8.             opacity: 0.5;  
  9.             filter: "alpha(opacity=50)";  
  10.             filter: alpha(opacity=50);  
  11.             -moz-opacity: 0.5;  
  12.         }  
  13.   
  14.         .box  
  15.         {  
  16.             width: 173px;  
  17.             height: 163px;  
  18.             display: block;  
  19.             background-color: orange;  
  20.         }  
  21.   
  22.         .absolute  
  23.         {  
  24.             position: absolute;  
  25.             width: 173px;  
  26.             height: 30px;  
  27.             margin-top: 133px;  
  28.         }  
  29.   
  30.         .relative  
  31.         {  
  32.             position: relative;  
  33.         }  
  34.     </style>  
  35. </head>  
  36. <body>  
  37.     <form id="form1" runat="server">  
  38.         <div>  
  39.             <div class="box">  
  40.                 <div class="absolute">  
  41.                     <div class="alpha50">  
  42.                         <div class="relative">显示文字</div>  
  43.                     </div>  
  44.                 </div>  
  45.             </div>  
  46.         </div>  
  47.     </form>  
  48. </body>  
  49. </html>  

 

先absolute再alpha可以解决在absolute下设置relative的不透明度

ok

本站仅提供存储服务,所有内容均由用户发布,如发现有害或侵权内容,请点击举报
打开APP,阅读全文并永久保存 查看更多类似文章
猜你喜欢
类似文章
【热】打开小程序,算一算2024你的财运
Div+Css网页布局之定位篇--Postion属性详解
请教CSS中的position:relative;的作用。
div+Css示例
理解CSS浮动float、定位position
一篇文章带你了解CSS Opacity(透明度)
收藏 不显示删除回复显示所有回复显示星级回复显示得分回复 datalist环境下,如何解决JavaScript鼠标经过切换图片
更多类似文章 >>
生活服务
热点新闻
分享 收藏 导长图 关注 下载文章
绑定账号成功
后续可登录账号畅享VIP特权!
如果VIP功能使用有故障,
可点击这里联系客服!

联系客服