168

原谅我这是一个愚蠢的问题,但我需要帮助。我想在焦点上更改 TEXTAREA 的边框颜色。但我的代码似乎无法正常工作。

请在fiddle上查看代码。

<form name = "myform" method = "post" action="insert.php"  onsubmit="return validateform()" style="width:40%">
    <input type="text" placeholder="Enter Name." name="name" maxlength="300" class="input">
    <input type="email" placeholder="Enter E-mail." name="address" maxlength="300" class="input">
    <textarea placeholder="Enter Message." name="descrip" class="input" ></textarea>    
    <br>
    <input class="button secondary" type=submit name="submit" value="Submit" >
</form>

这是CSS

.input {
    border:0; 
    padding:10px; 
    font-size:1.3em; 
    font-family:"Ubuntu Light","Ubuntu","Ubuntu Mono","Segoe Print","Segoe UI";
    color:#ccc; 
    border:solid 1px #ccc; 
    margin:0 0 20px; 
    width:300px;
    -moz-box-shadow: inset 0 0 4px rgba(0,0,0,0.2); 
    -webkit-box-shadow: inset 0 0 4px rgba(0, 0, 0, 0.2); 
    box-shadow: inner 0 0 4px rgba(0, 0, 0, 0.2);
    -webkit-border-radius: 3px; 
    -moz-border-radius: 3px; 
    border-radius: 3px;    
  }

input:focus { 
    outline: none !important;
    border-color: #719ECE;
    box-shadow: 0 0 10px #719ECE;
 }
4

8 回答 8

358
.input:focus {
    outline: none !important;
    border:1px solid red;
    box-shadow: 0 0 10px #719ECE;
  }
于 2013-04-22T21:03:06.687 回答
41

有一个 input:focus 因为有一个 textarea:focus

    input:focus { 
        outline: none !important;
        border-color: #719ECE;
        box-shadow: 0 0 10px #719ECE;
    }
    textarea:focus { 
        outline: none !important;
        border-color: #719ECE;
        box-shadow: 0 0 10px #719ECE;
    }
于 2015-09-07T13:54:54.230 回答
18

可能更合适的更改轮廓颜色的方法是使用outline-colorCSS 规则。

textarea {
  outline-color: #719ECE;
}

或用于输入

input {
  outline-color: #719ECE;
}

box-shadow不是完全相同的东西,它可能看起来与轮廓不同,特别是如果您将自定义样式应用于您的元素。

于 2019-07-26T11:29:11.377 回答
9

很简单 :

 outline-color : green!important;

我的 react-boostrap 按钮的整个 CSS 是:

 .custom-btn {
     font-size:1.9em;
     background: #2f5bff;
     border: 2px solid #78e4ff;
     border-radius: 3px;
     padding: 50px 70px;
     outline-color : blue !important;
     text-transform: uppercase;
     user-select: auto;
     -moz-box-shadow: inset 0 0 4px rgba(0,0,0,0.2);
     -webkit-box-shadow: inset 0 0 4px rgba(0, 0, 0, 0.2);
     -webkit-border-radius: 3px;
     -moz-border-radius: 3px;
 }
于 2020-02-26T23:27:02.580 回答
3

试试这个可能会奏效

input{
outline-color: #fff //your color
outline-style: none // it depend on you 
}
于 2021-02-02T23:21:14.267 回答
2

这将正常工作。

input:focus{
    outline: none;
    border:1px solid red;
}
于 2022-01-23T10:28:25.647 回答
1

你只需要在 scss 变量中

$input-btn-focus-width:       .05rem !default;
于 2020-03-08T07:25:06.767 回答
1

您可以使用 CSSpseudo-class来做到这一点。伪类用于定义元素的特殊状态。

有一个::focus伪类用于选择具有焦点的元素。所以你可以像这样把它挂在你的 CSS 中

使用类

.my-input::focus {
  outline-color: green;
}

使用 ID

#my-input::focus {
  outline-color: red;
}

直接选择元素

input::focus {
  outline-color: blue;
}

使用属性选择器

input[type="text"]::focus {
  outline-color: orange;
}

于 2021-02-10T04:08:17.910 回答