如何实现按钮底部半透明,但是不影响按钮的字体正常显示

这里写图片描述
有很多banner的图片都有两个半自动的按钮(所谓半自动就是需要人为触发的事件),字体颜色不受背景颜色的半透明影响。它的思路是首先定义一个外层(div,span…..),内层加一个标签作为按钮,一个标签作为背景。结构为:

<div>
    <a href="javascript:;" name="prev">prev</a>
    <span class="btn_bg"></span>
</div>

需要注意的时候css的设置有要求
首先要将背景标签充满整个外部标签,然后背景标签设置为白色,使用opacity进行透明设置

background-color: rgb(255, 255, 255);  
filter: alpha(opacity=50);  /*兼容IE */
opacity: 0.5;

然后背景标签的z-index小于按钮标签的z-index(注意z-index要与定位一起使用,不然没有效果);

这样就成功设置半透明的按钮。

但是如何实现鼠标悬浮时半透明的按钮背景变得更浅或更深啊?接着看下一篇文章。

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
可以使用JavaScript和CSS来实现这个功能。 HTML部分: 首先,在HTML部分中,我们需要有一个展示内容的区域,以及一个展开按钮。其中,展示内容的区域可以使用div元素来实现,而展开按钮则可以使用button元素来实现。代码如下: ``` <div id="content"> <!-- 这里是显示内容的区域 --> </div> <button id="expand-btn" onclick="expandContent()">展开</button> ``` CSS部分: 接着,在CSS部分中,我们需要设置展示内容区域的高度,并设置它的overflow属性为hidden,这样就可以隐藏超出四行的内容。同时,我们还需要设置展开按钮显示方式为none,以便在内容不超过四行时不显示按钮。代码如下: ``` #content { height: 80px; /* 假设一行的高度为20px,总共显示四行,因此高度为80px */ overflow: hidden; } #expand-btn { display: none; } ``` JavaScript部分: 最后,在JavaScript部分中,我们需要编写一个函数,用于展开内容区域,并隐藏展开按钮。代码如下: ``` function expandContent() { var content = document.getElementById("content"); var btn = document.getElementById("expand-btn"); content.style.height = "auto"; /* 自适应高度 */ btn.style.display = "none"; } ``` 接着,我们还需要编写一个函数,用于检查内容是否超过四行,并根据检查结果显示或隐藏展开按钮。代码如下: ``` function checkContent() { var content = document.getElementById("content"); var btn = document.getElementById("expand-btn"); if (content.scrollHeight > content.offsetHeight) { /* 内容超过四行,显示展开按钮 */ btn.style.display = "block"; } else { /* 内容不超过四行,隐藏展开按钮 */ btn.style.display = "none"; } } ``` 最后,在页面加载完毕时,我们需要调用checkContent函数来检查内容是否超过四行。代码如下: ``` window.onload = function() { checkContent(); } ``` 这样,当页面加载完毕时,就会自动检查内容是否超过四行,并根据检查结果显示或隐藏展开按钮。同时,当用户点击展开按钮时,就会展开内容区域,并隐藏展开按钮

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值