无法提交表单操作,因为它被覆盖隐藏 - 我已经尝试了 Z 索引和指针事件:无;CSS/React



在css上分层后,react组件中的按钮将不再可单击。我怀疑它被背景/覆盖物隐藏了。我已经将按钮包含在一个名为buttons容器的类中,并使用了z-index:-1,但它似乎不起作用。我的Z索引正确吗?谢谢

CSS Code 
*{
margin: 0px;
padding: 0px;
}
@import url('https://fonts.googleapis.com/css?family=Exo:400,700');
body {
font-family: Arial, Helvetica, sans-serif;
font-style: 20;
font-family: 'Exo', sans-serif;
// background-image: linear-gradient(to bottom right, aquamarine, green)
}
.buttons-container{
z-index: -1;
}
.login-container {
display: flex;
flex-direction: column;
align-items: center;
justify-content: center;
// width: 100vw;
// height: 100vw;
}
.login-logo {
font-size: 30px;
margin-top: 40px;
}
.login-subTitle {
font-size: 14px;
font-style: italic;
margin: 20px;
}
.button-container {
display: flex;
justify-content: center;
margin: 40px;
}
.login-buttons {
height: 25px;
width: 200px;
background-color: black;
color: whitesmoke;
// border: 2px solid whitesmoke;
border-radius: 6px;
}
.login-buttons:focus {
outline: 0;
}
.dice {
margin: 40px;
}
#register-button {
margin: 10px;
}
#login-button {
margin: 10px;
}
#password-input {
margin: 10px;
}
#username-input {
margin: 10px; 
}
.waiting-room-container {
display: flex;
flex-direction: column;
align-items: center;
}
.logo {
font-size: 30px;
}
.greeting {
margin: 40px;
line-height: 120%;
}
.drop-down {
padding: 20px;
}

.area{
background: #4e54c8;  
background: -webkit-linear-gradient(to left, #8f94fb, #4e54c8);  
width: 100%;
height:100vh;
pointer-events:none;
}
.circles{
position: absolute;
top: 0;
left: 0;
width: 100%;
height: 100%;
overflow: hidden;
}
.circles li{
position: absolute;
display: block;
list-style: none;
width: 20px;
height: 20px;
background: rgba(255, 255, 255, 0.2);
animation: animate 25s linear infinite;
bottom: -150px;
}
.circles li:nth-child(1){
left: 25%;
width: 80px;
height: 80px;
animation-delay: 0s;
}

.circles li:nth-child(2){
left: 10%;
width: 20px;
height: 20px;
animation-delay: 2s;
animation-duration: 12s;
}
.circles li:nth-child(3){
left: 70%;
width: 20px;
height: 20px;
animation-delay: 4s;

}
.circles li:nth-child(4){
left: 40%;
width: 60px;
height: 60px;
animation-delay: 0s;
animation-duration: 18s;

}
.circles li:nth-child(5){
left: 65%;
width: 20px;
height: 20px;
animation-delay: 0s;
}
.circles li:nth-child(6){
left: 75%;
width: 110px;
height: 110px;
animation-delay: 3s;
}
.circles li:nth-child(7){
left: 35%;
width: 150px;
height: 150px;
animation-delay: 7s;

}
.circles li:nth-child(8){
left: 50%;
width: 25px;
height: 25px;
animation-delay: 15s;
animation-duration: 45s;

}
.circles li:nth-child(9){
left: 20%;
width: 15px;
height: 15px;
animation-delay: 2s;
animation-duration: 35s;
}
.circles li:nth-child(10){
left: 85%;
width: 150px;
height: 150px;
animation-delay: 0s;
animation-duration: 11s;
}

@keyframes animate {
0%{
transform: translateY(0) rotate(0deg);
opacity: 1;
border-radius: 0;
}
100%{
transform: translateY(-1000px) rotate(720deg);
opacity: 0;
border-radius: 50%;
}
}
React Component
import React, { Component } from 'react';
import { Switch, Route } from 'react-router-dom';
// https://reacttraining.com/react-router/web/guides/quick-start
// import main containers for each page: login, profile, session page
import Login from './containers/Login.jsx';
import WaitingRoom from './containers/WaitingRoom.jsx';
import SessionRoom from './containers/SessionRoom.jsx';

import './styles.scss';
class App extends Component {
constructor(props) {
super(props);
}
render() {
return (
<div className="router">
<div className="area" >
<ul className="circles">
<li></li>
<li></li>
<li></li>
<li></li>
<li></li>
<li></li>
<li></li>
<li></li>
<li></li>
<li></li>
</ul>
<div className="buttonscontainer">
<main>
<Switch>
<Route
exact
path="/"
component={Login}
/>
<Route
exact
path="/waiting-room"
component={WaitingRoom}
/>
<Route
exact
path="/session-room"
component={SessionRoom}
/>
</Switch>
</main>
</div>
</div>
</div>
);
}
}
export default App;

问题是z索引是否被正确地用于定位按钮,以便单击它们。

在CSS中有

.buttons-container{
z-index: -1;
}

这将按钮容器放在其他元素的下方——将正z轴视为从页面中朝向用户,反之,负z轴则朝相反的方向。

看起来你应该将z索引设置为正,而不是负,这样才能将按钮放在其他所有按钮之上。

最新更新