Çift iki nokta üst üste ( ::) CSS'de ne anlama geliyor?
Örneğin:
input[type=text]::-ms-clear { display: none; }
Çift iki nokta üst üste ( ::) CSS'de ne anlama geliyor?
Örneğin:
input[type=text]::-ms-clear { display: none; }
Yanıtlar:
Sözde eleman seçici anlamına gelir . Bu , sağdaki öğenin normal DOM'da bulunmadığı, ancak seçilebileceği anlamına gelir.
Bir sözde eleman, iki iki noktadan (: :) ve ardından sözde elemanın adı oluşur.
Başlangıçta yalnızca tek bir kolon olduğu, ama ayırt etmek için değiştirildi sözde sınıfları (gibi :hover, :first-child, :notvb.) Tek iki nokta üst üste işareti daha iyi tarayıcı desteğine sahip olduğundan, yani önceki IE sürümlerinde sözde öğeler :için beforeve aftersözde öğeler kullanmak en iyisidir .
::Operatör bir seçiyoruz belirten sözde elemanı aslında bir unsur olarak var olmayan ama yine de stil için hedeflenebilir, bir.
Bunun örneği, -ms-clearsağladığınız örnek gibi satıcıya özgü birkaç uygulamayı içerir; çoğu tarayıcı, kaydırma çubuklarını ve diğer yerel UI öğelerini biçimlendirmek için sözde öğelere de sahiptir, ancak pratik nedenlerle başvurulabilecek birçok önceden tanımlanmış sözde öğe de vardır. first-lineve gibi first-letter.
:beforeVe :aftersözde elemanları bile birlikte CSS kullanarak sayfa içine gerçek içeriği eklemek için izin contentkural.
CSS3, sözde öğelerin seçilme şeklini değiştirir, çünkü W3C gibi a:visitedsözde sınıfları gibi sözde öğelerden ayırt etmek istiyor p::first-line. Bkz. Gelişmiş CSS Seçiciler .