Css sözde sınıfları girişi: değil (devre dışı) değil: [type = “gönder”]: odak


138

Ben giriş elemanları için bazı css uygulamak istiyorum ve ben sadece devre dışı olmayan ve türü göndermek olmayan girişler için bunu yapmak istiyorum, css altında çalışmıyor, belki birisi bana nasıl eklenmesi gerektiğini açıklayabilir.

input:not(disabled)not:[type="submit"]:focus{
box-shadow:0 0 2px 0 #0066FF;
-webkit-box-shadow:0 0 4px 0 #66A3FF;
}

Yanıtlar:


286

Onun yerine:

input:not(disabled)not:[type="submit"]:focus {}

kullanın:

input:not([disabled]):not([type="submit"]):focus {}

disabledbir özelliktir, bu nedenle parantezlere ihtiyaç duyar ve :not()seçicide karışık / eksik sütunlar ve parantezler var gibi görünüyor .

Demo: http://jsfiddle.net/HSKPx/

Unutulmaması gereken bir şey var: Yanlış olabilirim, ama disabledgirdilerin normalde odaklanabileceğini sanmıyorum , bu yüzden bu kısım gereksiz olabilir.

Alternatif olarak, :enabled

input:enabled:not([type="submit"]):focus { /* styles here */ }

Yine, engelli girişinin odaklanabileceği bir durum düşünemiyorum, bu yüzden gereksiz görünüyor.


41
: not ([devre dışı]) çok ayrıntılı bir yazma şeklidir: enable developer.mozilla.org/en-US/docs/Web/CSS/:enabled
Adria

@Adria benim için <a> s ile çalışmadı. <a engelli='disabled'> ile bir tane vardı ve özellikle: engelli seçiciyi kullanmak zorunda kaldı. FF65.
Robert Niestroj

nedense ": etkin" yani 11 benim için çalışmıyor
SLCH000

:not([disabled])VS kullanımı arasında herhangi bir fark var mı? :not(:disabled)?
bubencode

15

Sözdiziminiz oldukça berbat.

Bunu değiştir:

input:not(disabled)not:[type="submit"]:focus{

için:

input:not(:disabled):not([type="submit"]):focus{

Pek çok insanın fark etmediği :enabledve :disabledgeçerli CSS seçicileri olduğu anlaşılıyor ...


5
Neden daha da kısaltmıyorsunuz input:enabled:not([type="submit"]):focus{?
Sean the Bean

7

Seçiminizde birkaç yazım hatası var. Olmalı:input:not([disabled]):not([type="submit"]):focus

Kavram kanıtı için bu jsFiddle'a bakın . Bir uzantıda, "arka plan rengi" özelliğini kaldırırsam, kutu gölgesi artık çalışmaz. Emin değilim neden.

Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.