作者热门文章
- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
如果可能的话,我必须将整个表单变灰并禁用它(由 Javascript 控制)
我的想法是:
<div style="background-color: gray; opacity:0.7; z-index:2;">
<h:form prependId="false" id="login_form" style="x-index:1;">
...button
...inputBox
</h:form>
</div>
但它不能正常工作,事实上 DIV 的灰色仅在背景中,我希望表单中的所有对象(输入框、按钮、文本等...)都是灰色
我更喜欢只有一个 DIV,这样我就不必更改每个对象的样式(禁用按钮、禁用输入框等...)
谢谢
最佳答案
有多种方法可以实现这一点 - 一种简单的、基于纯 CSS 的方法是定义一个 CSS 类 .disable-form
并将其应用于 <div/>
当您希望禁用表单时,它会附上您的表单。
你可以这样做:
.disable-form {
/* Make form elements appear disabled against grey background */
background-color: gray;
opacity:0.5;
/* Prevent user interaction with form while disabled */
pointer-events:none;
}
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.0.0/jquery.min.js"></script>
<div>
<form prependId="false" id="login_form">
<div>
<label>Some field</label>
<input />
</div>
<label>Some field not wrapped in div</label>
<input />
</form>
</div>
<br>
<br>
<button id="toggle-disable">Click to toggle form disable</button>
<script>
document.getElementById('toggle-disable')
.addEventListener('click', function() {
document.getElementById('login_form')
.parentNode
.classList
.toggle('disable-form');
});
</script>
请注意,为了演示技术,我调整了此代码示例中的 HTML - 这里的关键是定义和应用 disable-form
CSS 以实现对表单的预期影响。
关于javascript - Greyout 整个表单 css,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53112337/
如果可能的话,我必须将整个表单变灰并禁用它(由 Javascript 控制) 我的想法是: ...button ...inputB
我是一名优秀的程序员,十分优秀!