1

Chromeで次のHTMLファイルを作成しようとしました:

<style>
br {
}​

[required] {
  border-width: 3px;
  border-color: red;
}

</style>
<input required />

これがファイルの完全な内容です。[required]ルールが一致せず、スタイルが設定されていません<input>

空の br ルールが省略され、ファイルが次のようになる場合:

<style>

[required] {
  border-width: 3px;
  border-color: red;
}

</style>
<input required />

それはうまくいきます!

<br>ルールの前にルールが存在すると、一致しない[required]原因になるのはなぜですか?[required]

ありがとう。(jsfiddle で問題なく動作します。実際にファイルを作成する必要があります。)

4

2 に答える 2

2

あなたの新しい行はどういうわけか無効です。それらが削除されると、コードは期待どおりに実行されます。

の閉じ括弧の直後まで問題を追跡しましたbr。これが私がvimで得るものです:

<style>
br {
}<200b>

[required] {
  border-width: 3px;
  border-color: red;
}

</style>
<input required />

どうやら<200b>Unicodeのゼロ幅スペースです。私はこのキャラクターに精通しておらず、なぜこのファイルに含まれるのかわかりません。削除すると問題が解決します。

于 2012-08-20T23:21:49.627 に答える
-1

私は br がブラウザをだますのに役立っていると思います-それらはより多くのブラケットであるため...

私はあなたが何かを逃していると思います...

.required{} and
<input class="required">  


or 
#required{} and
<input id="required">

フィドルを持ってみましょう!

于 2012-08-20T23:18:19.200 に答える