Me parece recordar que la mayoría (quizás todos) de los atributos en versiones anteriores de HTML (antes de HTML5) requerían que los atributos tuvieran valores, como readonly="readonly".
¿Es esto cierto para HTML5 y el autofocusatributo?
Estoy de acuerdo en que son similares, pero ligeramente diferentes, ya que preguntan sobre atributos diferentes.
Darryl Hein
1
el enfoque automático solo funciona. lo probé en FF, Opera y Chrome ..
Sohail Arif
Respuestas:
94
En HTML, usa atributos booleanos con o sin valores como desee. Un booleano, por W3C, como enfoque automático puede ser escrito como que autofocuso autofocus="autofocus"o también autofocus="".
Si no desea el enfoque automático, no lo escriba.
Creo que usted está confundido porque XHTML requiere valores para todos los atributos: attributes="values".
+1 por mencionar XHTML. La conformidad XML de XHTML es la única razón por la que ha existido un disabled="disabled". Lo mismo ocurre con las etiquetas de cierre. En HTML no es necesario cerrar todas las etiquetas (por ejemplo, br o input), pero dado que XHTML debe ser XML válido, también es necesario cerrar etiquetas.
Tim Büthe
4
"XHTML es la única razón por la que ha existido disabled="disabled"". Y SGML es la única razón por la que XHTML tiene la silly="silly"sintaxis bool en lugar de solo whatever="true", y HTML es la única razón por la que this="false"puede significar esto = verdadero. :)
Sz.
52
Citando la especificación HTML5 y ampliando un poco Pekka:
La presencia de un atributo booleano en un elemento representa el valor verdadero y la ausencia del atributo representa el valor falso.
Si el atributo está presente, su valor debe ser la cadena vacía o un valor que sea una coincidencia ASCII que no distinga entre mayúsculas y minúsculas para el nombre canónico del atributo, sin espacios en blanco al principio o al final.
Conclusión :
Los siguientes son válidos, equivalentes y verdaderos :
La ausencia del atributo es la única sintaxis válida para falso :
<inputtype="text"/>
Recomendación
Si le interesa escribir XHTML válido, utilícelo autofocus="autofocus", ya <input autofocus>que no es válido y otras alternativas son menos legibles. De lo contrario, utilícelo <input autofocus>ya que es más corto.
No , basta con especificar el atributo en sí. Fue así también en HTML 4 .
Varios atributos son atributos booleanos . La presencia de un atributo booleano en un elemento representa el valor verdadero y la ausencia del atributo representa el valor falso.
Si el atributo está presente, su valor debe ser la cadena vacía o un valor que sea una coincidencia ASCII que no distinga entre mayúsculas y minúsculas para el nombre canónico del atributo, sin espacios en blanco al principio o al final.
Respuestas:
En HTML, usa atributos booleanos con o sin valores como desee. Un booleano, por W3C, como enfoque automático puede ser escrito como que
autofocus
oautofocus="autofocus"
o tambiénautofocus=""
.Si no desea el enfoque automático, no lo escriba.
Creo que usted está confundido porque XHTML requiere valores para todos los atributos:
attributes="values"
.Aquí hay información sobre el uso de atributos booleanos en HTML: http://www.whatwg.org/specs/web-apps/current-work/multipage/common-microsyntaxes.html#boolean-attribute
fuente
disabled="disabled"
. Lo mismo ocurre con las etiquetas de cierre. En HTML no es necesario cerrar todas las etiquetas (por ejemplo, br o input), pero dado que XHTML debe ser XML válido, también es necesario cerrar etiquetas.disabled="disabled"
". Y SGML es la única razón por la que XHTML tiene lasilly="silly"
sintaxis bool en lugar de solowhatever="true"
, y HTML es la única razón por la quethis="false"
puede significar esto = verdadero. :)Citando la especificación HTML5 y ampliando un poco Pekka:
http://www.w3.org/TR/html5/forms.html#autofocusing-a-form-control:-the-autofocus-attribute :
http://www.w3.org/TR/html5/infrastructure.html#boolean-attributes :
Conclusión :
Los siguientes son válidos, equivalentes y verdaderos :
<input type="text" autofocus /> <input type="text" autofocus="" /> <input type="text" autofocus="autofocus" /> <input type="text" autofocus="AuToFoCuS" />
Los siguientes no son válidos :
<input type="text" autofocus="0" /> <input type="text" autofocus="1" /> <input type="text" autofocus="false" /> <input type="text" autofocus="true" />
La ausencia del atributo es la única sintaxis válida para falso :
<input type="text"/>
Recomendación
Si le interesa escribir XHTML válido, utilícelo
autofocus="autofocus"
, ya<input autofocus>
que no es válido y otras alternativas son menos legibles. De lo contrario, utilícelo<input autofocus>
ya que es más corto.fuente
No , basta con especificar el atributo en sí. Fue así también en HTML 4 .
Ejemplo:
<label><input type=checkbox checked name=cheese disabled> Cheese</label>
fuente