Javascript 元素(背景图像)不透明度,但没有边框不透明度
我知道怎么做,怎么做,但我想有一个元素没有边框不透明度,有背面图像不透明度。我不想在图像编辑器中修改图像,所以我正在寻找CSS设置的不透明度。可能吗 在我的CSS下面,我想修改“禁用”状态与尖锐无不透明边界。请建议 使用示例:Javascript 元素(背景图像)不透明度,但没有边框不透明度,javascript,html,css,Javascript,Html,Css,我知道怎么做,怎么做,但我想有一个元素没有边框不透明度,有背面图像不透明度。我不想在图像编辑器中修改图像,所以我正在寻找CSS设置的不透明度。可能吗 在我的CSS下面,我想修改“禁用”状态与尖锐无不透明边界。请建议 使用示例: 按钮样式: 点击效果: 禁用状态的额外样式: 状态的额外样式: 您所处的情况与—您希望有一个透明的背景,但非透明的内容(边框对其起作用) 因此,在CSS3中,没有什么像背景图像不透明度这样的东西,您只能构建一个透明的图像或将两个元素放置在彼此上方,较低的元素包含图像(如
按钮样式: 点击效果: 禁用状态的额外样式: 状态的额外样式:
您所处的情况与—您希望有一个透明的背景,但非透明的内容(边框对其起作用) 因此,在CSS3中,没有什么像背景图像不透明度这样的东西,您只能构建一个透明的图像或将两个元素放置在彼此上方,较低的元素包含图像(如那里的答案所示) 但在你的情况下,这将足以掩盖图像。例如,这可以通过从一开始就使用透明图像来完成,但可以更改参考底图
背景色
。或者你会用
<div class="button" title="Zoom!"><img src="icon.gif" alt="glasses" /></div>
这在语义上也更有意义。你应该远离那些内联样式
()您可以通过按钮顶部的半透明伪元素使背景图像变暗,但不能通过边框:
div.button {
...
position: relative;
}
div.disabled:after {
content: '';
display: block;
position: absolute;
top: 0;
left: 0;
right: 0;
bottom: 0;
margin: 0;
background: rgba(255,255,255,0.7);
border-radius: 6px;
}
请注意,我之所以提出这个建议,只是因为我喜欢挑战,我仍然认为Bergi的答案是“正确的方式”
要提供边框不透明度,可以在边框的颜色部分使用rgba({values})。你也可以给透明(在同一部分)使边框消失。为什么你想要不透明度,而不仅仅是降低颜色?您有一个带有
颜色的按钮:透明;背景:无代码>,顺便说一句-你能向我们展示你的页面吗?为什么你使用div.button而不是真正的按钮,它们甚至有一个禁用属性?@Bergi-我用fiddle(三个按钮:正常、打开、禁用)更新了这个问题。我希望“禁用”按钮与普通按钮具有相同的边框。我使用div.button
是因为我想要我的样式,就像你在我的CSS中看到的那样。@ppsrejith-我没有运气-请看我更新的问题中的fiddle链接-如果可以,请用解决方案更新该fiddle。我希望放置在按钮顶部的伪元素也能禁用onclick
按钮事件,我很乐意,但由于某些原因,它不()这个部分也可以使用伪元素吗?请注意.Pseudo-elements不会阻止事件,因此您必须执行类似$(element)的操作。单击(function(){if{$(this).hasClass('.disabled'){return false;}}}}})
div.disabled, div.disabled:hover
{
cursor: default;
filter: alpha(opacity=50);
-ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=50)";
opacity: 0.50;
-moz-opacity: 0.50;
}
div.disabled:active
{
left: 0px;
position: relative;
top: 0px;
}
div.on, div.on:hover
{
border: 2px solid #007FFF;
}
<div class="button" title="Zoom!"><img src="icon.gif" alt="glasses" /></div>
div.button.disabled img { opacity: .5; }
div.button {
...
position: relative;
}
div.disabled:after {
content: '';
display: block;
position: absolute;
top: 0;
left: 0;
right: 0;
bottom: 0;
margin: 0;
background: rgba(255,255,255,0.7);
border-radius: 6px;
}