Input:focus 不工作

Input:focus not working

起初我的输入焦点工作得很好,现在当我向我的输入添加更多样式时,它突然停止工作。我只添加了 'input[type="text"] 和 border-radius 和 padding 以及一些边距,因为它正在工作。当您单击每个表单元素时,即使我有一个焦点规则(您可以在代码底部附近找到),也没有任何反应。有什么解决方法吗?

form{
  position: absolute;
  left: 50%;
  color: white;
  margin-left: -180px;
  padding: 15px 30px 15px 30px;
  background-color: #26004d;
  border-radius: 7px;
  margin-top: 10px;
  width: 300px;
}

label{
  float: left;
  text-align: right;
  margin-right: 15px;
  width: 100px;
}

input:focus {
  border: 2px solid #862d59;
}

input[type="submit"]{
  width: 50%;
  background-color: #862d59;
  color: white;
  margin-top: 5px;
  padding: 12px 12px;
  border: none;
  cursor: pointer;
}

input[type="text"]{
  width: 100%;
  padding:  12px 12px;
  margin: 4px 0;
  border: 1px solid #ccc;
  border-radius: 6px;
  //box-sizing: border-box;
}
<div id="formholder1">
  <form>
    <div class="single-field">
   <label for="Username">Username:</label>
   <input name="Name" type="text"></input>
    </div>
    <div class="single-field">
      <label for="Password">Password:</label>
      <input name="Password" type="text"></input>
    </div>
    <input type="submit" value="Login">
  </form> 
</div> 

将您的 :focus 属性 放在 input 之后。

input[type="text"]:focus {
    border: 5px solid #862d59;
}

form{
 position: absolute;
 left: 50%;
 color: white;
 margin-left: -180px;
 padding: 15px 30px 15px 30px;
 background-color: #26004d;
 border-radius: 7px;
 margin-top: 10px;
 width: 300px;
}

label{
 float: left;
 text-align: right;
 margin-right: 15px;
 width: 100px;
}


input[type="submit"]{
 width: 50%;
 background-color: #862d59;
 color: white;
 margin-top: 5px;
 padding: 12px 12px;
 border: none;
 cursor: pointer;
}

input[type="text"]{
 width: 100%;
 padding:  12px 12px;
 margin: 4px 0;
 border: 1px solid #ccc;
 border-radius: 6px;
 box-sizing: border-box;

}
input[type="text"]:focus {
 border: 5px solid #862d59;
}
<div id="formholder1">

   <form>
    <div class="single-field">
    <label for="Username">Username:</label>
     <input name="Name" type="text"></input>
    </div>

    <div class="single-field">
     <label for="Password">Password:</label>
     <input name="Password" type="text"></input>

    </div>
    <input type="submit" value="Login">
   </form> 
  </div>

使用这个input[type="text"]:focus { border: 2px solid #862d59; }

学习它 - http://www.w3schools.com/cssref/trysel.asp?selector=:focus

示例 - https://css-tricks.com/snippets/css/glowing-blue-input-highlights/ 现在开始工作

form{
 position: absolute;
 left: 50%;
 color: white;
 margin-left: -180px;
 padding: 15px 30px 15px 30px;
 background-color: #26004d;
 border-radius: 7px;
 margin-top: 10px;
 width: 300px;
}

label{
 float: left;
 text-align: right;
 margin-right: 15px;
 width: 100px;
}
input[type="text"]:focus {
 border: 2px solid #862d59;
}
input:focus {
 border: 2px solid red;
}

input[type="submit"]{
 width: 50%;
 background-color: #862d59;
 color: white;
 margin-top: 5px;
 padding: 12px 12px;
 border: none;
 margin-left:-10px;
 cursor: pointer;
}

input[type="text"]{
 width: 100%;
 padding:  12px 12px;
 margin: 4px 0;
 border: 1px solid #ccc;
 border-radius: 6px;
  margin-left:-15px;

 //box-sizing: border-box;

}
<div id="formholder1">

   <form>
    <div class="single-field">
    <label for="Username">Username:</label>
     <input name="Name" type="text"></input>
    </div>

    <div class="single-field">
     <label for="Password">Password:</label>
     <input name="Password" type="text"></input>

    </div>
    <input type="submit" value="Login">
   </form> 
  </div>