W atrybucie HTML nazwa = wartość par, jakie są znaki dozwolone dla części "nazwa"? ..... Patrząc na jakieś common attributes wydaje się, że używane są tylko litery (az i AZ), ale jakie inne znaki mogą być również dozwolone? ... może cyfry (0-9), łączniki (-) i kropki (.) ... czy jest jakiś spec dla tego?Jakie znaki są dozwolone w nazwie atrybutu HTML?
Odpowiedz
Zależy od tego, co masz na myśli przez "dozwolony". Każdy znacznik ma ustaloną listę nazw atrybutów, które są poprawne, aw języku html wielkość liter nie ma znaczenia. W jednym ważnym znaczeniu, tylko te znaki we właściwej kolejności są "dozwolone".
Innym sposobem patrzenia na to jest to, jakie znaki będą traktować przeglądarki jako poprawna nazwa atrybutu. Najlepszą radą jest tutaj specyfikacja parsera HTML 5, którą można znaleźć tutaj: https://html.spec.whatwg.org/multipage/syntax.html#attributes-2
Mówi, że wszystkie znaki z wyjątkiem tabulatora, linii, paszy, przestrzeni, solidus, większej niż znak, cudzysłowu, apostrofu i znak równości będzie traktowany jako część nazwy atrybutu. Osobiście nie próbowałbym jednak forsować takich przypadków.
Odpowiedz na moje pytanie. "wszystkie postacie oprócz ... będą traktowane jako część nazwy atrybutu" - Kudos na znalezieniu tej informacji, również w specyfikacji! –
Tak, nie "pchaj". Niektóre raczej pospolite postacie będą musiały zostać usunięte w selektorach CSS, inne złamią podświetlanie składni edytora, itp. – Rolf
Dla odniesienia, wyrażenie regularne to '/ ([^ \ t \ n \ f \ />" = ] +)/' – Nate
Dostępne wartości są wymienione na w3.org. Jeśli dodasz atrybut niestandardowy, nie będziesz już więcej pisać w HTML.
Ostateczny. Więc wszystkie dozwolone znaki są obecne w tym dokumencie. Dzięki! –
To nie do końca prawda, ponieważ można określić własne atrybuty 'data-'. – ioquatix
@ioquatix - Było prawdą w 2009 roku! Nawet w przypadku atrybutów danych w miksie jest to bardzo specyficzna forma dostosowywania zdefiniowana w specyfikacji. – Quentin
Zakładając, że mówisz o XHTML, obowiązują zasady XML.
Zobacz http://www.w3.org/TR/2008/REC-xml-20081126/#NT-Name
Nazwy i żetony
[4] NameStartChar ::= ":" | [A-Z] | "_" | [a-z] | [#xC0-#xD6] | [#xD8-#xF6] | [#xF8-#x2FF] | [#x370-#x37D] | [#x37F-#x1FFF] | [#x200C-#x200D] | [#x2070-#x218F] | [#x2C00-#x2FEF] | [#x3001-#xD7FF] | [#xF900-#xFDCF] | [#xFDF0-#xFFFD] | [#x10000-#xEFFFF]
[4a] NameChar ::= NameStartChar | "-" | "." | [0-9] | #xB7 | [#x0300-#x036F] | [#x203F-#x2040]
[5] Name ::= NameStartChar (NameChar)*
[6] Names ::= Name (#x20 Name)*
[7] Nmtoken ::= (NameChar)+
[8] Nmtokens ::= Nmtoken (#x20 Nmtoken)*
imho, to powinna być akceptowana odpowiedź – revelt
Może ja czegoś brakuje, ale uważam, że pytanie jest oparty na fałszywym założeniu. W HTML, atrybuty są ściśle defined zgodnie ze stałą specyfikacją. Jeśli "nadrobisz" własne nazwy atrybutów, nie będziesz już pisać poprawnego kodu HTML.
... chyba że są niestandardowymi atrybutami "data- *". –
@MathiasBynens Cool, jeszcze o tym nie wiedziałem! Mimo to należy pamiętać, że są one ważne tylko dla HTML5, a nie dla żadnej poprzedniej wersji HTML. – Daan
Dlaczego nie używać HTML5? –
- 1. Jakie znaki specjalne są dozwolone w nazwie kolumny T-SQL?
- 2. Jakie znaki są niedozwolone w nazwie oddziału?
- 3. Jakie są legalne/dozwolone znaki dla nazw plików serwera WWW?
- 4. Jakie są dozwolone znaki w słowach kluczowych Clojure?
- 5. są znaki # lub & dozwolone w xml?
- 6. Jakie jednostki są dozwolone w google.maps.Size?
- 7. Jakie znaki specjalne są dozwolone w nazwach i metodach zmiennych instancji Smalltalk?
- 8. Jakie są dozwolone zastosowania globalnych haków klawiatury?
- 9. Dozwolone znaki PDO dla symboli zastępczych
- 10. Czy dozwolone są pojedyncze/podwójne cudzysłowy w wartościach atrybutów HTML?
- 11. Zaszyfrowane Base64 Dozwolone znaki
- 12. Jakie znaki są poprawne w adresie URL?
- 13. Jakie znaki NIE są obecne w Unicode?
- 14. Jakie znaki "specjalne" są dozwolone w polach Varchar programu SQL Server?
- 15. Dozwolone znaki w własności treści CSS?
- 16. Dozwolone znaki w identyfikatorze klucza mapy YAML
- 17. Jakie parametry są dozwolone w polityce gier na komputery stacjonarne?
- 18. Jakie znaki są pozostawione dla tokenów pp?
- 19. Jakie znaki są usuwane przez stringByAddingPercentEscapesUsingEncoding?
- 20. Dozwolone znaczniki HTML w Javadoc
- 21. Co to są poprawne znaki w nazwie usługi Windows (klucz)?
- 22. Jakie są dwa znaki separatora w zakotwiczeniu adresu URL?
- 23. Jakie są prawidłowe znaki w nazwach przestrzeni nazw PHP?
- 24. Jakie są możliwe przyrostki po nazwie zmiennej w VBA?
- 25. Jakie atrybuty html/css są bezpieczne pocztą?
- 26. Jakie elementy DOM nie są elementami HTML?
- 27. Jakie znaki uciekną PreparedStatement?
- 28. Czy dozwolone są zmienne polimorficzne?
- 29. Czy są dozwolone funkcje anonimowe?
- 30. Jaki jest cel atrybutu "role" w HTML?
To brzmi jak pytanie, które wywołało Angular 2: P –