2016-10-17 29 views
8

Bir Aurelia projesi oluşturuyorum ve görünümlerim için özel öğeleri kullanıyorum. İçinde yaşadıkları alan nedeniyle özel öğeleri kullanmanın daha iyi bir uygulama olduğunu okudum, ancak bunları düzgün bir şekilde nasıl şekillendireceğime dair şüphelerim var.HTML5'teki stil özel öğeler

Örneğin, özel öğeyi doldurmak için arka plan rengini almak için display:block yapmam gerekiyor. Bunun bir çok eleman için yapılması gerekiyor.

div { 
 
    background-color:green; 
 
} 
 

 
div:first-child customelement { 
 
    display:block; 
 
} 
 

 
customelement { 
 
    background-color:blue; 
 
}
<div> 
 
    <customelement> 
 
    <h1>test</h1> 
 
    </customelement> 
 
</div> 
 

 
<div> 
 
    <customelement> 
 
    <h1>test</h1> 
 
    </customelement> 
 
</div>

tüm özel elementler için bu jenerik hale getirmek için basit bir yolu var mı ? Mevcut olmayan her bir HTML5 öğesini hedeflemek için herhangi bir SCSS yöntemi olabilir mi?

+1

Tüm var olmayan HTML5 öğelerinde aynı sınıfı ekleyin mi? – Alexis

+0

@Alexis 'Her şeyi el ile yapmak', yanlışlıkla tutarsızlığı önlemek için burada kaçınmaya çalıştığım şeydir. – Randy

+0

Evet biliyorum. Ancak elementinizi döngülerle oluşturursanız daha kolay olacaktır. Bazen, her öğeyi tek tek almaktan daha çok aynı sınıfı eklemek daha kolaydır. Öğelerinizi nasıl oluşturulduğunu veya yazdığımı bilmiyorum. bir çözüm olabilirdi. – Alexis

cevap

7

Varsayılan olarak HTML Özel Öğeleri, span benzeri bir undefined element olarak tanımlanmıştır. Tarayıcının daha önce hiç görmediği bir undefined element olarak, varsayılan kullanıcı aracısı stiline sahip değildir ve devralınan değerler verilecektir ve bir kullanıcı aracısı stil sayfasının kullanıcı tarafından geçersiz kılınmasından başka tüm öğeler için varsayılan olan inline öğesi olarak görülecektir. W3C Önerilen varsayılanlarla uyumludur.

Tek seçeneğiniz, block düzey öğesi olarak tanımlanan CSS stilinizin en üstündeki tüm öğelere gerçekten sahip olmaktır.

customelement, customelement2 { 
 
    display: block; 
 
} 
 
div { 
 
    background-color:green; 
 
} 
 

 
customelement { 
 
    background-color:blue; 
 
} 
 

 
customelement2 { 
 
    background-color: red; 
 
} 
 
<div> 
 
    <h1>Not Custom 
 
</div> 
 
<div> 
 
    <customelement> 
 
    <h1>Custom Element</h1> 
 
    </customelement> 
 
</div> 
 

 
<div> 
 
    <customelement2> 
 
    <h1>Custom Element 2</h1> 
 
    </customelement2> 
 
</div>

Sen here (W3C Custom elements) daha okuyabilir ve komut yüklenirken, img-viewer eleman tanımlanmamış bir unsur olarak ele alınacaktır 3 paragrafta

bu hat, benzer özellikle span.

+0

@Randy Okumak için bir referans ekledim. Tüm belge, özel öğeleri tanımlarken çok kullanışlıdır, çünkü aslında daha fazla öğe var, sadece istediğiniz eleman ismini yazmaktan daha fazlası var :) – Stewartside