:focusでtextareaの境界線の色を変更する方法


113

これは愚かな質問ですが、私には助けが必要です。TEXTAREAの枠線の色を変更したい。しかし、私のコードは正しく機能していないようです。

親切にフィドルでコードを表示します。

<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;
}

デフォルトの色のような境界線のルックスのために選択した色....
lologic

回答:


239
.input:focus {
    outline: none !important;
    border:1px solid red;
    box-shadow: 0 0 10px #719ECE;
}

2
textareaでそのクラスを既に使用しているため、input:focusを.input:focusに変更することもできます。そのようにして余分なセレクターを取り除きます。
Hoshts 2013

1
気になるだけ、なぜtextareasには必要なoutline: noneのに通常のテキストボックス入力には必要ないのか購入してください。
ジャスティンスキーズ2014

アウトラインとシャドウを一緒に使用するほうがよいと思います。「アウトライン:ソリッド2px#8dc63f;ボックスシャドウ:0 0 21px#8dc63f;」:-)
BG BRUNO

1
このフィドルリンクは存在しません。
Arpan Jain

20

textarea:focusがあるのでinput: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;
}

11
両方のルールは次のように組み合わせることができます- input:focus, textarea:focus { outline: none !important; border-color: #719ECE; box-shadow: 0 0 10px #719ECE; }両方のタイプの要素に同じ効果を望む場合。
Hitesh

8

おそらく、アウトラインの色を変更するより適切な方法は、outline-colorCSSルールを使用することです。

textarea {
  outline-color: #719ECE;
}

または入力用

input {
  outline-color: #719ECE;
}

box-shadow はまったく同じものではなく、特に要素にカスタムスタイルを適用する場合、アウトラインとは異なる場合があります。


1
はい、しかし、輪郭は長方形ではありませんか?ボタン/入力をボーダー半径でスタイリングしている場合は良くありません。
ジョセフクライフェルスII

1
アウトラインは、アクセシビリティーのためにフォーカスされたフィールドを強調表示するためにブラウザーが使用するものです。可能な限りそれを守ることをお勧めします。明らかに、デザインが非常に具体的であれば、回避策を自由に作成できます:)
Grgur

2

とても簡単 :

 outline-color : blue !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;
}

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.