Vraag HTML 5: Is it of,
of
?


Ik heb geprobeerd te checken andere antwoorden, maar ik ben nog steeds in de war - vooral na het zien Referentie W3schools HTML 5.

Ik dacht dat HTML 4.01 de "single-tags" zou toestaan ​​om gewoon te zijn <img> en <br>. Toen kwam XHTML <img /> en <br /> (waar iemand zei dat de ruimte er is voor oudere browsers).

Nu vraag ik me af hoe ik mijn code moet opmaken als ik HTML 5 gebruik.

<!DOCTYPE HTML>

Is het <br>, <br/> of <br />?


1685
2017-12-22 13:39


oorsprong


antwoorden:


eenvoudigweg <br> is voldoende.

De andere vormen zijn er voor compatibiliteit met XHTML; om het mogelijk te maken dezelfde code te schrijven als XHTML en deze ook als HTML te laten werken. Sommige systemen die HTML genereren, zijn mogelijk gebaseerd op XML-generatoren en hebben dus niet de mogelijkheid om slechts een kale versie uit te voeren <br> label; als je een dergelijk systeem gebruikt, is het prima te gebruiken <br/>, het is gewoon niet nodig als je het niet hoeft te doen.

Zeer weinig mensen gebruiken echter XHTML. U dient uw inhoud als application/xhtml+xml om te kunnen worden geïnterpreteerd als XHTML, en dat zal niet werken in oude versies van IE - het zal ook betekenen dat elke kleine fout die je maakt zal voorkomen dat je pagina wordt weergegeven in browsers die XHTML ondersteunen. Dus het meeste van wat lijkt op XHTML op het web wordt feitelijk geserveerd en geïnterpreteerd als HTML. Zien XHTML gebruiken als tekst / html Beschouwd als schadelijk voor meer informatie.


1289
2017-12-22 13:42



Ik denk dat dit citaat uit de HTML 5 Reference Draft biedt het antwoord:

Sommige elementen zijn echter verboden   inhoud helemaal niet bevatten.   Deze staan ​​bekend als ongeldige elementen. In   HTML, de bovenstaande syntaxis kan niet worden gebruikt   voor ongeldige elementen. Voor dergelijke elementen,   de eindtag moet worden weggelaten omdat   het element wordt automatisch gesloten door   de parser. Dergelijke elementen omvatten,   onder andere, br, hr, link en meta

HTML-voorbeeld:

<link type="text/css" rel="stylesheet" href="style.css">

In XHTML, de XML-syntactische   eisen dicteren dat dit moet zijn   expliciet gemaakt met behulp van een expliciete   eindlabel, zoals hierboven, of leeg   elementsyntaxis. Dit wordt bereikt door   een schuine streep invoegen aan het einde van de   start de tag onmiddellijk voor de rechterkant   hoeksteun.

Voorbeeld:

<link type="text/css" href="style.css"/>

Auteurs kunnen desgewenst kiezen om te gebruiken   dezelfde syntaxis voor ongeldige elementen in   de HTML-syntaxis ook. Sommige auteurs   kies er ook voor om spatie toe te voegen   voor de schuine streep, maar dit is het niet   noodzakelijk. (Met behulp van witruimte daarin   mode is een conventie die wordt geërfd van   de compatibiliteitsrichtlijnen in XHTML   1.0, bijlage C.)


195
2017-12-22 13:44



XML staat het verlaten van tags niet toe, dus het maakt <br> een beetje erger dan de andere twee. De andere twee zijn min of meer gelijk aan de tweede die de voorkeur heeft voor compatibiliteit met oudere browsers. Eigenlijk, eerder ruimte / verdient de voorkeur omwille van de compatibiliteit, maar ik denk dat dit alleen zin heeft voor tags met attributen. Dus ik zou het ook zeggen <br/> of <br />, wat je esthetiek ook bevalt.

Samengevat: alle drie zijn geldig en de eerste is wat minder "draagbaar".

Bewerk: Nu we allemaal gek zijn op specificaties, vind ik het de moeite waard om erop te wijzen dat volgens dev.w3.org:

Starttags bestaan ​​uit het volgende   onderdelen, in precies de volgende volgorde:

  1. Een "<" teken.
  2. De tag-naam van het element.
  3. Optioneel een of meer attributen, die elk moeten zijn   voorafgegaan door een of meer spatie   karakters.
  4. Optioneel een of meer spaties.
  5. Optioneel een "/" -teken, dat mogelijk alleen aanwezig is als het   element is een leeg element.
  6. Een ">" teken.

119
2017-12-22 13:42



In HTML (tot HTML 4): gebruik <br>

In HTML 5: <br> heeft de voorkeur, maar <br/> en <br /> is ook aanvaardbaar

In XHTML: <br /> heeft de voorkeur. Kan ook gebruiken <br/> of <br></br>

Opmerkingen:

  • <br></br> is niet geldig in HTML 5, het zal worden beschouwd als twee regeleinden.
  • XHTML is hoofdlettergevoelig, HTML is niet hoofdlettergevoelig.
  • Voor achterwaartse compatibiliteit zouden sommige oude browsers XHTML parsen als HTML en falen <br/> maar niet <br />

Referentie:


88
2017-12-30 05:40



Volgens de spec de verwachte vorm is <br> voor HTML 5 maar een afsluitende schuine streep is toegestaan.


52
2017-12-22 13:44



XML vereist dat alle tags een bijbehorende afsluitende tag hebben. Er is dus een speciale korte hand-syntaxis voor tags zonder inhoud.

HTML5 is geen XML, dus het zou niet zo'n vereiste moeten zijn. Evenmin is HTML 4.01.

Bijvoorbeeld in HTML5-specificaties, alle voorbeelden met br tag gebruik <br> syntaxis, niet <br/>.

UPD Werkelijk, <br/> is toegestaan ​​in HTML5. 9.1.2.1, 7.


19
2017-12-22 13:48



Ik zou het gebruik van <br /> om de volgende redenen aanraden:

1) Tekst- en XML-editors die de XML-syntaxis in verschillende kleuren markeren, worden correct gemarkeerd met <br /> maar dit is niet altijd het geval als u een

2) <br /> is achterwaarts compatibel met XHTML en goed gevormde HTML (bijv .: XHTML) is vaak gemakkelijker te valideren voor fouten en debuggen

3) Sommige oude parsers en enkele coderingsspecificaties vereisen de spatie vóór de afsluitende schuine streep (dat wil zeggen: <br /> in plaats van <br/>), zoals de WordPress plug-in coderingsspecificatie: http://make.wordpress.org/core/handbook/coding-standards/html/

Ik heb mijn ervaring, ik ben nog nooit een zaak tegengekomen waarbij het gebruik van <br /> problematisch is, maar er zijn veel gevallen waarin <br/> of vooral <br> problematisch kan zijn in oudere browsers en tools.


13
2018-01-16 17:43



Beide <br> en <br /> zijn acceptabel in HTML5, maar in de geest van HTML, <br> zou gebruikt moeten worden. HTML5 maakt het sluiten van slashes mogelijk om beter compatibel te zijn met documenten die eerder HTML 4.01 en XHTML 1.0 waren, waardoor migratie naar HTML5 eenvoudiger wordt. Natuurlijk, <br/> is ook acceptabel, maar om compatibel te zijn met sommige oudere browsers, moet er een spatie zijn vóór de afsluitende schuine streep (/).


11
2018-04-21 18:50