Soru Html5'te işaretli olarak bir onay kutusu ayarlamak için, kontrol edilmiş (özellik olarak) veya kontrol edilmiş = “işaretli” (bir özellik olarak) kullanmalı mıyım?


Şu anda eklentimizdeki onay kutularını ayarlayarak kontrol ettik

<input type="checkbox" checked="checked" />

Bu, xhtml uyumluluğunu korumaktı. Bir mülk olarak kontrol edilmeyi daha çok tercih ediyorum

<input type="checkbox" checked />

Html5'e devam etmenin doğru yolu nedir? Hala xhtml uyumluluğunu önemsemeli miyiz?


42
2017-09-08 13:49


Menşei


İhtiyacınız olmadığını unutmayın. /> HTML5'te de. - Mark Reed
Bu bir özellik değil, bu hala bir özellik. Yalnızca bir komut dosyasında veya bir mülk olarak adlandırılan başka bir yerde yaparsanız özelliği ayarlarsınız. Ancak HTML ve XML biçimlendirmesinde, bir özellik olarak adlandırılır. - BoltClock♦


Cevaplar:


Her iki durumda da bir özelliktir. Ve bir değer (aynı değer, trueHer iki durumda da, öğenin düğümünde bir DOM özelliği.

Çoğu amaç için hangi sözdizimini kullandığınız önemli değildir. Ancak, dikkat edilmesi gereken bazı noktalar var:

  • XML serileştirmede HTML5 kullanırsanız (“XHTML5”), kullanmanız gerekir. checked="checked".
  • Stil olarak, öznitelik seçicilerini kullanırken sözdizimleri oldukça eşdeğer değildir (daha kısa biçim eşleşmiyor [checked=checked]), ama bu pratikte önemli değil: [checked] her iki durumda da onaylanmış onay kutularıyla eşleşir.
  • Clumsy sözdizimi checked="checked" SGML'den bir hamildir ve yalnızca uyumluluk için dahildir, bu yüzden kodunuzu eski moda (nadiren önemli olan) haline getirebilir.

36
2017-09-08 14:19



Bu sözdizimi SGHT'den XHTML'ye taşındı (XML'in tersine)? - BoltClock♦
checked="checked" sözdizimi de XML'ye taşındı. HTML5, SGML veya XML temelli değildir, bu nedenle kendi sözdizimini daha doğal bir şekilde tanımlayabilir: “Boolean” özniteliği sadece bir addır (bunu, adın azaltılmış bir şekli olarak açıklamak gerekmeden = bir değer sözdizimi). - Jukka K. Korpela
@DanDascalescu Bir öznitelik ayarlamak için jQuery kullanırken, prop ('işaretli') açıkça sadece onay kutusunun durumunu alması ve attr işe yaramayacağı için .prop ('işaretli', 'işaretli') olarak adlandırmanız gerekir. [Özellikler ve Özellikler: api.jquery.com/prop  ] - Randall Flagg


<!-- Default to unchecked -->
<input type="checkbox">

<!-- Default to checked, XHTML -->
<input type="checkbox" checked="checked" />

<!-- Default to checked, HTML5 -->
<input type="checkbox" checked>

Kaynak: http://css-tricks.com/indeterminate-checkboxes/


25
2017-09-08 13:54





Checked HTML 5'teki bir boole özniteliğidir. Gerçek bir değer var olan öznitelikle gösterilir ve yanlış bir değer onun yokluğuyla gösterilir. Varsa, değeri boş olmalı veya özellik adına ayarlanmalıdır. checked="checked". Bu formlardan biri doğrudur:

<input type="checkbox" checked="checked" />
<input type="checkbox" checked>

https://www.w3.org/TR/html5/infrastructure.html#sec-boolean-attributes


8
2017-09-08 14:01



Bitti. Gelecekte, kendiniz gibi düzenlemeler yapmaktan çekinmeyin. İşbirliği, bu sitede cevapları harika yapan şeydir. - jncraton
Bunu fark etmedim! @Jncraton bilgi için teşekkürler! - NessDan
Bu, komitenin tasarım (başarısızlık) neden kötü bir şey olabileceğinin en iyi örneklerinden biridir. Değer için doğru / yanlış, sezgisel anlamda mantıklıdır, ama sanırım W3C bunun yeterince kafa karıştırıcı olduğunu düşünmüyordu. - A.R.


HTML5'teki XHTML serileştirmesini kullanan belgeler oluşturuyorsanız, HTML5'te XHTML uyumluluğuna önem veriyorsunuz. application/xhtml+xml MIME türü veya aşağıdaki gibi sunulabilecek bir çokgrup belge oluşturma application/xhtml+xml veya olarak text/html ('normal' html mime-tipi).

Sadece kullanıyorsanız text/htmlo zaman XHTML sözdizimini önemsemenize gerek yok. Sen yine de Mayıs ayı Sayfanıza SVG veya MathML yerleştirirken XML stili kendi kendine kapanma sözdizimini kullanın. (SVG, en son tarayıcılarda yaygın olarak desteklenir, MathML daha az.) Ayrıca kullanabilirsiniz /> sona ermek geçersiz Meta, link, input, img vb. Gibi HTML unsurları, ancak bunun kullanımdan farklı bir etkisi yoktur. > Bu elemanları bitirmek için.

Terminoloji hakkında küçük bir yorum. İşaretlemede, ortak yazımda ya checked veya checked="checked" bir "öznitelik" dir. Bir "özellik" başka bir şeydir.


5
2017-09-08 14:33





Göre http://www.w3.org/TR/html-markup/input.checkbox.html bu bir özellik


0
2017-09-08 13:55