web-dev-qa-db-ja.com

JSなしのEdgeにプレースホルダーがあるテキスト入力のカーソルを中央に配置する方法は?

Edgeを除くすべてのブラウザで動作します。純粋なCSSの回避策はありますか?

input {
  text-align: center
}
<input placeholder="placeholder" />
23
Tamás Bolvári

いい発見だ、タマス!これは、フォームコントロールのバグのようです。プレースホルダーがない場合、カーソルは命令を尊重しますが、プレースホルダーがある場合、左揃えに戻ります。これは非常に意図的ではないようで、掘り下げる価値があります。

15
Sampson

これを使ってみてください。入力フィールドテキストのcssが既に中央にある場合のEdgeの修正です。

 if(window.navigator.userAgent.search(/Edge/ig)){

     $("#inputfield").focus((e)=>{
        $("#codefield").attr({placeholder: ""});
     });

     $("#codefield").blur((e)=>{
        $("#codefield").attr({placeholder: "Your Placeholder"});
     });

 }
1
Leon Tinashe