Devuelve la Declaración de tipo de documento (Document Type Declaration (DTD)), asociada al documento actual. El objeto devuelto implementa la interfaz {{domxref("DocumentType")}}. Utilice {{domxref("DOMImplementation.createDocumentType()")}} para crear un DocumentType
.
-
-El nivel 2 de DOM no soporta la edición de la declaración de tipo de documento.
-
-Esta propiedad es de sólo-lectura, facilitada para obtener el elemento raíz de cualquier documento.
-
-Originalmente DOM3 fue definido como un atributo de lectura/escritura. En DOM4 se especifica unicamente como de lectura.
-
-Los documentos HTML tienen una propiedad {{domxref("document.URL")}} la cual devuelve el mismo valor (ubicación del documento). A diferencia de URL
, documentURI
está disponible para todos los tipos de documentos web.
-
-Una {{domxref("HTMLCollection")}}.
-
-La excepción es si otro elemento ya estaba en modo de pantalla completa cuando el elemento actual se colocó en modo de pantalla completa usando requestFullscreen()
. En ese caso, el elemento de pantalla completa anterior se restaura al estado de pantalla completa. En esencia, se mantiene un {{interwiki("wikipedia", "Stack_(abstract_data_type)", "stack")}} de elementos de pantalla completa.
-
-Ninguno.
-
-Un {{jsxref("Promise")}} que se resuelve una vez que el {{Glossary("user agent")}} a terminado de salir del modo de pantalla completa. Si se produce un error al intentar salir del modo de pantalla completa, se llama al controlador catch()
para la promesa.
-
-Este ejemplo hace que el documento actual entre y salga de una presentación a pantalla completa cada vez que se hace clic dentro del botón del mouse.
-
-Los usuarios nuevos deberían notar que escribir en mayúsculas 'Id' en el nombre de este método debe ser corregida para que el código sea válido - 'getElementByID' no funcionará a pesar de que parezca natural.
-
-A diferencia de otros métodos similares, getElementById sólo está disponible como un método del objeto global document, y no se encuentra disponible como un método en todos los objetos del DOM. Como los valores ID deben ser únicos a traves del documento, no existe necesidad para versiones "locales" de la función.
-
-` porque "M" y "m" son diferentes para los propósitos de este método.
+
+**Elementos que no se encuentren** en el documento no serán buscados por `getElementById()`. Cuando se cree un elemento y se le asigne un ID, debe insertar el elemento dentro del árbol del documento con {{domxref("Node.insertBefore()")}} u otro método similar antes de que se pueda acceder a el con `getElementById()`:
+
+```js
+var element = document.createElement("div");
+element.id = 'testqq';
+var el = document.getElementById('testqq'); // el será null!
+```
+
+**Documentos no-HTML**. La implementación de DOM debe tener información que diga que atributos son del tipo ID. Los atributos con el nombre "id" son son del tipo ID a menos que se los defina en el DTD del documento. El atributo `id` es definido para ser del tipo ID en los casos comunes de [XHTML](/es/docs/XHTML), [XUL](/es/docs/Mozilla/Tech/XUL), y otros. Las implementaciones que no sepan si los atributos son o no del tipo ID se espera que retornen null.
+
+## Especificaciones
+
+{{Specifications}}
+
+## Compatibilidad del Navegador
+
+{{Compat}}
+
+## Ver también
+
+- La referencia [document](/es/docs/DOM/document "en-US/docs/DOM/document") para otros métodos y propiedades que se pueden usar para obtener referencias a elementos en el documento.
+- [document.querySelector()](/es/docs/Web/API/document.querySelector) para selectores via consultas como `'div.myclass'`
+- [xml:id](/es/docs/xml/xml:id "en-US/docs/xml/id") - tiene un método utilitario para permitir que `getElementById()` obtenga 'xml:id' en documentos XML documents (como los retornados por llamadas Ajax.
diff --git a/files/es/web/api/document/getelementsbyclassname/index.html b/files/es/web/api/document/getelementsbyclassname/index.html
deleted file mode 100644
index 541d21eb42980c..00000000000000
--- a/files/es/web/api/document/getelementsbyclassname/index.html
+++ /dev/null
@@ -1,50 +0,0 @@
----
-title: Document.getElementsByClassName()
-slug: Web/API/Document/getElementsByClassName
-translation_of: Web/API/Document/getElementsByClassName
----
-
{{APIRef("DOM")}}
-
-
Retorna un objecto similar a un array de los elementos hijos que tengan todos los nombres de clase indicados. Cuando es llamado sobre el objeto document , la busqueda se realiza en todo el document, incluido el nodo raíz. También puedes llamar {{domxref("Element.getElementsByClassName", "getElementsByClassName()")}} sobre cualquier elemento; en ese caso retornara sólo los elementos hijos del elemento raíz indicado que contengan los nombres de clase indicados.
-
-
Sintaxis
-
-
var elementos = document.getElementsByClassName(nombres ); // ó :
-var elementos = elementoRaiz.getElementsByClassName(nombres );
-
-
- elementos es una {{ domxref("HTMLCollection") }} de los elementos encontrados.
- nombres es un string que representa la lista de nombres de clase a buscar; los nombres de clase se separan con un espacio.
- getElementsByClassName se puede llamar sobre cualquier elemento, no solo sobre document. El elemento sobre el que se llama será usado como la raíz de la busqueda.
-
-
-
Ejemplos
-
-
Obtener todos los elementos de la clase 'prueba'
-
-
document.getElementsByClassName('prueba');
-
-
Obtener todos los elementos que tengan al mismo tiempo las clases 'rojo' y 'prueba'
-
-
document.getElementsByClassName('rojo prueba');
-
-
Obtener todos los elementos que tengan la clase 'prueba' y que estén dentro de un elemento de ID 'principal'
-
-
document.getElementById('principal').getElementsByClassName('prueba');
-
-
También podemos usar los metodos de Array.prototype en cualquier {{ domxref("HTMLCollection") }} pasando el HTMLCollection como el valor this del método. Aquí buscaremos todos los elementos div de la clase 'test':
-
-
var testElements = document.getElementsByClassName('test');
-var testDivs = Array.prototype.filter.call(testElements, function(testElement){
- return testElement.nodeName === 'DIV';
-});
-
-
Compatibilidad con navegadores
-
-{{Compat("api.Document.getElementsByClassName")}}
-
-
Especifiación
-
-
diff --git a/files/es/web/api/document/getelementsbyclassname/index.md b/files/es/web/api/document/getelementsbyclassname/index.md
new file mode 100644
index 00000000000000..590b4239b025d8
--- /dev/null
+++ b/files/es/web/api/document/getelementsbyclassname/index.md
@@ -0,0 +1,56 @@
+---
+title: Document.getElementsByClassName()
+slug: Web/API/Document/getElementsByClassName
+translation_of: Web/API/Document/getElementsByClassName
+---
+{{APIRef("DOM")}}
+
+Retorna un objecto similar a un array de los elementos hijos que tengan todos los nombres de clase indicados. Cuando es llamado sobre el objeto document , la busqueda se realiza en todo el document, incluido el nodo raíz. También puedes llamar {{domxref("Element.getElementsByClassName", "getElementsByClassName()")}} sobre cualquier elemento; en ese caso retornara sólo los elementos hijos del elemento raíz indicado que contengan los nombres de clase indicados.
+
+## Sintaxis
+
+```js
+var elementos = document.getElementsByClassName(nombres); // ó :
+var elementos = elementoRaiz.getElementsByClassName(nombres);
+```
+
+- _elementos es una_ {{ domxref("HTMLCollection") }} de los elementos encontrados.
+- _nombres es un string que representa la lista de nombres de clase a buscar; los nombres de clase se separan con un espacio._
+- getElementsByClassName se puede llamar sobre cualquier elemento, no solo sobre document. El elemento sobre el que se llama será usado como la raíz de la busqueda.
+
+## Ejemplos
+
+Obtener todos los elementos de la clase 'prueba'
+
+```js
+document.getElementsByClassName('prueba');
+```
+
+Obtener todos los elementos que tengan al mismo tiempo las clases 'rojo' y 'prueba'
+
+```js
+document.getElementsByClassName('rojo prueba');
+```
+
+Obtener todos los elementos que tengan la clase 'prueba' y que estén dentro de un elemento de ID 'principal'
+
+```js
+document.getElementById('principal').getElementsByClassName('prueba');
+```
+
+También podemos usar los metodos de Array.prototype en cualquier {{ domxref("HTMLCollection") }} pasando el _HTMLCollection_ como el valor _this_ del método. Aquí buscaremos todos los elementos div de la clase 'test':
+
+```js
+var testElements = document.getElementsByClassName('test');
+var testDivs = Array.prototype.filter.call(testElements, function(testElement){
+ return testElement.nodeName === 'DIV';
+});
+```
+
+## Especificaciones
+
+{{Specifications}}
+
+## Compatibilidad del Navegador
+
+{{Compat}}
diff --git a/files/es/web/api/document/getelementsbyname/index.html b/files/es/web/api/document/getelementsbyname/index.html
deleted file mode 100644
index 68503568add801..00000000000000
--- a/files/es/web/api/document/getelementsbyname/index.html
+++ /dev/null
@@ -1,81 +0,0 @@
----
-title: Document.getElementsByName()
-slug: Web/API/Document/getElementsByName
-translation_of: Web/API/Document/getElementsByName
----
-
{{APIRef("DOM")}}
-
-
Returns a nodelist collection with a given {{domxref("element.name","name")}} in the (X)HTML document.
-
-
Sintaxis
-
-
elements = document.getElementsByName(name )
-
-
-
- elements
es una colección existente de {{domxref("NodeList")}}
- name
es el valor del atributo name
del elemento.
-
-
-
Ejemplo
-
-
<!DOCTYPE html>
-<html lang="en">
-<head>
- ...
-</head>
-
-<body>
-<form name="up"><input type="text"></form>
-<div name="down"><input type="text"></div>
-
-<script>
-var up_forms = document.getElementsByName("up");
-console.log(up_forms[0].tagName); // returns "FORM"
-</script>
-</body>
-</html>
-
-
-
Notas
-
-
El atributo name
es solamente aplicable al documento (X)HTML. El método retorna una colección existente de {{domxref("NodeList")}} que contiene todos los elementos con el valor dado para el atributo name
, tanto {{htmlelement("meta")}} o {{htmlelement("object")}} o en caso que name
sea colocado en elementos que no soportan un atributo de atributo del todo.
-
-
El método getElementsByName trabaja de diferente manera en diferentes navegadires. En IE < 10, el método getElementsByName() tambipen retornará elementos que tienen un atributo id
con el valor especificado. Entonces, debería tener cuidado de no usar el mismo string como name
y ID
.
-
-
Especificaciones
-
-
-
-
Especificaciones
-
-
-
-
- Especificaciones
- estado
- Comentario
-
-
- {{SpecName('HTML WHATWG', '#dom-document-getelementsbyname', "Document.getElementsByName()")}}
- {{ Spec2('HTML WHATWG') }}
-
-
-
- {{SpecName("DOM2 HTML", "html.html#ID-71555259", "Document.getElementsByName()")}}
- {{Spec2("DOM2 HTML")}}
- Initial definition
-
-
-
-
-
Mira también
-
-
- {{domxref("document.getElementById()")}} para retornar una referencia de un elemento por su id
- {{domxref("document.getElementsByTagName()")}} para retornar referencias de elementos por el nombre de sus etiquetas
- {{domxref("document.querySelector()")}} for powerful selectors via queries like 'div.myclass'
-
diff --git a/files/es/web/api/document/getelementsbyname/index.md b/files/es/web/api/document/getelementsbyname/index.md
new file mode 100644
index 00000000000000..11f0bd2b7d157b
--- /dev/null
+++ b/files/es/web/api/document/getelementsbyname/index.md
@@ -0,0 +1,58 @@
+---
+title: Document.getElementsByName()
+slug: Web/API/Document/getElementsByName
+translation_of: Web/API/Document/getElementsByName
+---
+{{APIRef("DOM")}}
+
+Returns a nodelist collection with a given {{domxref("element.name","name")}} in the (X)HTML document.
+
+## Sintaxis
+
+```js
+elements = document.getElementsByName(name)
+```
+
+- `elements` es una colección existente de {{domxref("NodeList")}}
+- `name` es el valor del atributo `name` del elemento.
+
+## Ejemplo
+
+```html
+
+
+
+ ...
+
+
+
+
+
+
+
+
+
+```
+
+## Notas
+
+El atributo [`name`](/es/docs/DOM/element.name) es solamente aplicable al documento (X)HTML. El método retorna una colección existente de {{domxref("NodeList")}} que contiene todos los elementos con el valor dado para el atributo `name`, tanto {{htmlelement("meta")}} o {{htmlelement("object")}} o en caso que `name` sea colocado en elementos que no soportan un atributo de atributo del todo.
+
+El método **getElementsByName** trabaja de diferente manera en diferentes navegadires. En IE < 10, el método getElementsByName() tambipen retornará elementos que tienen un atributo `id` con el valor especificado. Entonces, debería tener cuidado de no usar el mismo string como `name` y `ID`.
+
+## Especificaciones
+
+{{Specifications}}
+
+## Compatibilidad del Navegador
+
+{{Compat}}
+
+## Mira también
+
+- {{domxref("document.getElementById()")}} para retornar una referencia de un elemento por su `id`
+- {{domxref("document.getElementsByTagName()")}} para retornar referencias de elementos por el nombre de sus etiquetas
+- {{domxref("document.querySelector()")}} for powerful selectors via queries like `'div.myclass'`
diff --git a/files/es/web/api/document/getelementsbytagname/index.html b/files/es/web/api/document/getelementsbytagname/index.html
deleted file mode 100644
index 7be48858c0cde2..00000000000000
--- a/files/es/web/api/document/getelementsbytagname/index.html
+++ /dev/null
@@ -1,104 +0,0 @@
----
-title: document.getElementsByTagName
-slug: Web/API/Document/getElementsByTagName
-tags:
- - Referencia_DOM_de_Gecko
-translation_of: Web/API/Document/getElementsByTagName
----
-
{{ ApiRef("DOM") }}
-
-
Resumen
-
-
Devuelve una lista de elementos con un nombre determinado. Se busca en todo el documento, incluyendo el nodo raíz.
-
-
Sintaxis
-
-
elements = document.getElementsByTagName(name )
-
-
-
- elements
es una lista 'viva' (NodeList
) de los elementos encontrados en el orden en que han aparecido en el árbol.
- name
es una cadena que representa el nombre de los elementos. La cadena especial "*" representa a todos los elementos.
-
-
-
Ejemplo
-
-
En el siguiente ejemplo, getElementsByTagName
empieza por el elemento padre y busca hacia abajo recurrentemente a lo largo de todo el DOM por ese elemento padre, buscando por hijos que cumplan con el criterio: nombre = name
.
-
-
Ten en cuenta que cuando el nodo en el que se invoca getElementsByTagName
, no es el nodo document
, en realidad se está usando el método element.getElementsByTagName .
-
-
<html>
-
-<head>
-<title>ejemplo de getElementsByTagName</title>
-
-<script type="text/javascript">
-
-function getAllParaElems()
-{
- var allParas = document.getElementsByTagName("p");
-
- var num = allParas.length;
-
- alert("Hay " + num + " <p> elementos en este documento");
-}
-
-
-function div1ParaElems()
-{
- var div1 = document.getElementById("div1")
- var div1Paras = div1.getElementsByTagName("p");
-
- var num = div1Paras.length;
-
- alert("Hay " + num + " <p> elementos en el elemento div1");
-}
-
-
-function div2ParaElems()
-{
- var div2 = document.getElementById("div2")
- var div2Paras = div2.getElementsByTagName("p");
-
- var num = div2Paras.length;
-
- alert("Hay " + num + " <p> elementos en el elemento div2");
-}
-
-</script>
-</head>
-
-<body style="border: solid green 3px">
-<p>Algo de texto</p>
-<p>Algo de texto</p>
-
- <div id="div1" style="border: solid blue 3px">
- <p>Algo de texto en div1</p>
- <p>Algo de texto en div1</p>
- <p>Algo de texto en div1</p>
-
- <div id="div2" style="border: solid red 3px">
- <p>Algo de texto en div2</p>
- <p>Algo de texto en div2</p>
- </div>
- </div>
-
-<p>Algo de texto</p>
-<p>Algo de texto</p>
-
-<button onclick="getAllParaElems();">
- muestra todos los elementos p en el documento</button><br />
-
-<button onclick="div1ParaElems();">
- muestra todos los elementos p en div1</button><br />
-
-<button onclick="div2ParaElems();">
- muestra todos los elementos p en div2</button>
-
-</body>
-</html>
-
-
-
Especificación
-
-
DOM Level 2 Core: Document.getElementsByTagName
diff --git a/files/es/web/api/document/getelementsbytagname/index.md b/files/es/web/api/document/getelementsbytagname/index.md
new file mode 100644
index 00000000000000..1fad566a88c1f5
--- /dev/null
+++ b/files/es/web/api/document/getelementsbytagname/index.md
@@ -0,0 +1,108 @@
+---
+title: document.getElementsByTagName
+slug: Web/API/Document/getElementsByTagName
+tags:
+ - Referencia_DOM_de_Gecko
+translation_of: Web/API/Document/getElementsByTagName
+---
+{{ ApiRef("DOM") }}
+
+### Resumen
+
+Devuelve una lista de elementos con un nombre determinado. Se busca en todo el documento, incluyendo el nodo raíz.
+
+### Sintaxis
+
+```js
+elements = document.getElementsByTagName(name)
+```
+
+- `elements` es una lista 'viva' (`NodeList`) de los elementos encontrados en el orden en que han aparecido en el árbol.
+- `name` es una cadena que representa el nombre de los elementos. La cadena especial "\*" representa a todos los elementos.
+
+### Ejemplo
+
+En el siguiente ejemplo, `getElementsByTagName` empieza por el elemento padre y busca hacia abajo recurrentemente a lo largo de todo el DOM por ese elemento padre, buscando por hijos que cumplan con el criterio: nombre = `name`.
+
+Ten en cuenta que cuando el nodo en el que se invoca `getElementsByTagName`, no es el nodo `document`, en realidad se está usando el método [element.getElementsByTagName](es/DOM/element.getElementsByTagName).
+
+```html
+
+
+
+
ejemplo de getElementsByTagName
+
+
+
+
+
+
Algo de texto
+
Algo de texto
+
+
+
Algo de texto en div1
+
Algo de texto en div1
+
Algo de texto en div1
+
+
+
Algo de texto en div2
+
Algo de texto en div2
+
+
+
+
Algo de texto
+
Algo de texto
+
+
+ muestra todos los elementos p en el documento
+
+
+ muestra todos los elementos p en div1
+
+
+ muestra todos los elementos p en div2
+
+
+
+```
+
+## Especificaciones
+
+{{Specifications}}
+
+## Compatibilidad del Navegador
+
+{{Compat}}
diff --git a/files/es/web/api/document/getelementsbytagnamens/index.html b/files/es/web/api/document/getelementsbytagnamens/index.html
deleted file mode 100644
index d97657647be6c4..00000000000000
--- a/files/es/web/api/document/getelementsbytagnamens/index.html
+++ /dev/null
@@ -1,107 +0,0 @@
----
-title: document.getElementsByTagNameNS
-slug: Web/API/Document/getElementsByTagNameNS
-tags:
- - Referencia_DOM_de_Gecko
-translation_of: Web/API/Document/getElementsByTagNameNS
----
-
{{ ApiRef() }}
-
-
Resumen
-
-
Devuelve una lista de elementos cuyo nombre pertenece a un determinado 'namespace'. La búsqueda se realiza en todo el documento, incluyendo el elemento raíz.
-
-
Sintaxis
-
-
elements = document.getElementsByTagNameNS(namespace ,name )
-
-
-
- elements
es una lista del tipo NodeList
de los elementos encontrados, en el orden en el que aparecen en el árbol.
- namespace
es el nombre URI en el que buscamos. (Véase element.namespaceURI
).
- name
es bien el nombre local por el que buscamos, o bien el valor especial "*"
, que representa todos los elementos (véase element.localName
).
-
-
-
Ejemplo
-
-
En el siguiente ejemplo, getElementsByTagNameNS
comienza por un elemento padre determinado y busca recurrentemente, hacia abajo, por los elementos que tienen el parámetro name
que concuerda.
-
-
Es importante tener en cuenta que cuando el nodo en el que se invoca getElementsByTagName
, no es el nodo document
, en realidad estamos usando el método element.getElementsByTagNameNS .
-
-
Para usar el siguiente ejemplo, copia y pega en un documento con la extensión xhtml.
-
-
<html xmlns="http://www.w3.org/1999/xhtml">
-
-<head>
-<title>ejemplo de getElementsByTagNameNS</title>
-
-<script type="text/javascript">
-
-function getAllParaElems()
-{
- var allParas = document.getElementsByTagNameNS("http://www.w3.org/1999/xhtml", "p");
-
- var num = allParas.length;
-
- alert("Hay " + num + " <p> elementos en este documento");
-}
-
-
-function div1ParaElems()
-{
- var div1 = document.getElementById("div1")
- var div1Paras = div1.getElementsByTagNameNS("http://www.w3.org/1999/xhtml", "p");
-
- var num = div1Paras.length;
-
- alert("Hay " + num + " <p> elementos en el elemento div1");
-}
-
-
-function div2ParaElems()
-{
- var div2 = document.getElementById("div2")
- var div2Paras = div2.getElementsByTagNameNS("http://www.w3.org/1999/xhtml", "p");
-
- var num = div2Paras.length;
-
- alert("Hay " + num + " <p> elementos en el elemento div2");
-}
-
-</script>
-</head>
-
-<body style="border: solid green 3px">
-<p>Algo de texto exterior</p>
-<p>Algo de texto exterior</p>
-
- <div id="div1" style="border: solid blue 3px">
- <p>Algo de texto en div1</p>
- <p>Algo de texto en div1</p>
- <p>Algo de texto en div1</p>
-
- <div id="div2" style="border: solid red 3px">
- <p>Algo de texto en div2</p>
- <p>Algo de texto en div2</p>
- </div>
- </div>
-
-<p>Algo de texto exterior</p>
-<p>Algo de texto exterior</p>
-
-<button onclick="getAllParaElems();">
- muestra todos los elementos p en el documento</button><br />
-
-<button onclick="div1ParaElems();">
- muestra todos los elementos p en el div1</button><br />
-
-<button onclick="div2ParaElems();">
- muestra todos los elementos p en el div2</button>
-
-</body>
-</html>
-
-
-
Especificación
-
-
DOM Level 2 Core: Document.getElementsByTagNameNS
diff --git a/files/es/web/api/document/getelementsbytagnamens/index.md b/files/es/web/api/document/getelementsbytagnamens/index.md
new file mode 100644
index 00000000000000..8e7cc50d72445c
--- /dev/null
+++ b/files/es/web/api/document/getelementsbytagnamens/index.md
@@ -0,0 +1,111 @@
+---
+title: document.getElementsByTagNameNS
+slug: Web/API/Document/getElementsByTagNameNS
+tags:
+ - Referencia_DOM_de_Gecko
+translation_of: Web/API/Document/getElementsByTagNameNS
+---
+{{ ApiRef() }}
+
+### Resumen
+
+Devuelve una lista de elementos cuyo nombre pertenece a un determinado 'namespace'. La búsqueda se realiza en todo el documento, incluyendo el elemento raíz.
+
+### Sintaxis
+
+```js
+elements = document.getElementsByTagNameNS(namespace,name)
+```
+
+- `elements` es una lista del tipo `NodeList` de los elementos encontrados, en el orden en el que aparecen en el árbol.
+- `namespace` es el nombre URI en el que buscamos. (Véase [`element.namespaceURI`](es/DOM/element.namespaceURI)).
+- `name` es bien el nombre local por el que buscamos, o bien el valor especial `"*"`, que representa todos los elementos (véase [`element.localName`](es/DOM/element.localName)).
+
+### Ejemplo
+
+En el siguiente ejemplo, `getElementsByTagNameNS` comienza por un elemento padre determinado y busca recurrentemente, hacia abajo, por los elementos que tienen el parámetro `name` que concuerda.
+
+Es importante tener en cuenta que cuando el nodo en el que se invoca `getElementsByTagName`, no es el nodo `document`, en realidad estamos usando el método [element.getElementsByTagNameNS](es/DOM/element.getElementsByTagNameNS).
+
+Para usar el siguiente ejemplo, copia y pega en un documento con la extensión xhtml.
+
+```html
+
+
+
+
ejemplo de getElementsByTagNameNS
+
+
+
+
+
+
Algo de texto exterior
+
Algo de texto exterior
+
+
+
Algo de texto en div1
+
Algo de texto en div1
+
Algo de texto en div1
+
+
+
Algo de texto en div2
+
Algo de texto en div2
+
+
+
+
Algo de texto exterior
+
Algo de texto exterior
+
+
+ muestra todos los elementos p en el documento
+
+
+ muestra todos los elementos p en el div1
+
+
+ muestra todos los elementos p en el div2
+
+
+
+```
+
+## Especificaciones
+
+{{Specifications}}
+
+## Compatibilidad del Navegador
+
+{{Compat}}
diff --git a/files/es/web/api/document/getselection/index.html b/files/es/web/api/document/getselection/index.html
deleted file mode 100644
index 465c75bc53e725..00000000000000
--- a/files/es/web/api/document/getselection/index.html
+++ /dev/null
@@ -1,14 +0,0 @@
----
-title: Document.getSelection()
-slug: Web/API/Document/getSelection
-tags:
- - Referencia
- - Selección
- - metodo
-translation_of: Web/API/DocumentOrShadowRoot/getSelection
-translation_of_original: Web/API/Document/getSelection
-original_slug: Web/API/DocumentOrShadowRoot/getSelection
----
-
{{APIRef("DOM")}}
-
-
Este método funciona exactamente igual que {{domxref("Window.getSelection()")}}; devuelve un objeto {{domxref("Selection")}} que representa el texto que se ha seleccionado en el documento.
diff --git a/files/es/web/api/document/getselection/index.md b/files/es/web/api/document/getselection/index.md
new file mode 100644
index 00000000000000..452c4562d76f82
--- /dev/null
+++ b/files/es/web/api/document/getselection/index.md
@@ -0,0 +1,22 @@
+---
+title: Document.getSelection()
+slug: Web/API/Document/getSelection
+tags:
+ - Referencia
+ - Selección
+ - metodo
+translation_of: Web/API/DocumentOrShadowRoot/getSelection
+translation_of_original: Web/API/Document/getSelection
+original_slug: Web/API/DocumentOrShadowRoot/getSelection
+---
+{{APIRef("DOM")}}
+
+Este método funciona exactamente igual que {{domxref("Window.getSelection()")}}; devuelve un objeto {{domxref("Selection")}} que representa el texto que se ha seleccionado en el documento.
+
+## Especificaciones
+
+{{Specifications}}
+
+## Compatibilidad del Navegador
+
+{{Compat}}
diff --git a/files/es/web/api/document/hasfocus/index.html b/files/es/web/api/document/hasfocus/index.html
deleted file mode 100644
index a3f4a7ce9e1cd9..00000000000000
--- a/files/es/web/api/document/hasfocus/index.html
+++ /dev/null
@@ -1,23 +0,0 @@
----
-title: element.hasFocus
-slug: Web/API/Document/hasFocus
-tags:
- - Referencia_DOM_de_Gecko
-translation_of: Web/API/Document/hasFocus
----
-
{{ ApiRef() }}
-
-
Resumen
-
-
El atributo hasFocus
devuelve true
si el foco está en en algún sitio del documento activo. Este atributo es parte de la especificación HTML 5 actualmente en desarrollo.
-
-
Sintaxis
-
-
focused = element.hasFocus
-
-
-
Ejemplo
-
-
Especificación
-
-
Focus management
diff --git a/files/es/web/api/document/hasfocus/index.md b/files/es/web/api/document/hasfocus/index.md
new file mode 100644
index 00000000000000..7c68c9f5be9bf4
--- /dev/null
+++ b/files/es/web/api/document/hasfocus/index.md
@@ -0,0 +1,26 @@
+---
+title: element.hasFocus
+slug: Web/API/Document/hasFocus
+tags:
+ - Referencia_DOM_de_Gecko
+translation_of: Web/API/Document/hasFocus
+---
+{{ ApiRef() }}
+
+### Resumen
+
+El atributo `hasFocus` devuelve `true` si el foco está en en algún sitio del documento activo. Este atributo es parte de la especificación HTML 5 actualmente en desarrollo.
+
+### Sintaxis
+
+```js
+focused = element.hasFocus
+```
+
+## Especificaciones
+
+{{Specifications}}
+
+## Compatibilidad del Navegador
+
+{{Compat}}
diff --git a/files/es/web/api/document/head/index.html b/files/es/web/api/document/head/index.html
deleted file mode 100644
index 2b72bbce272126..00000000000000
--- a/files/es/web/api/document/head/index.html
+++ /dev/null
@@ -1,37 +0,0 @@
----
-title: Document.head
-slug: Web/API/Document/head
-translation_of: Web/API/Document/head
----
-
{{APIRef("DOM")}}
-
-
Devuelve el elemento {{HTMLElement("head")}} del documento actual. Si hay más de un elemento <head>
, devuelve el primero de estos.
-
-
Sintaxis
-
-
var objRef = document.head;
-
-
-
Ejemplo
-
-
// en el HTML: <head id="my-document-head">
-var aHead = document.head;
-
-alert(aHead.id); // "my-document-head";
-
-alert( document.head === document.querySelector("head") ); // true
-
-
-
Notas
-
-
document.head
is de sólo lectura. Cualquier intento de asignar un valor a esta propiedad fallará silenciosamente o, en caso de que se encuentre en Modo estricto de ECMAScript en un navegador Gecko, lanzará un TypeError
.
-
-
Compatibilidad con navegadores
-
-{{Compat("api.Document.head")}}
-
-
Especificación
-
-
diff --git a/files/es/web/api/document/head/index.md b/files/es/web/api/document/head/index.md
new file mode 100644
index 00000000000000..62708edfe43981
--- /dev/null
+++ b/files/es/web/api/document/head/index.md
@@ -0,0 +1,37 @@
+---
+title: Document.head
+slug: Web/API/Document/head
+translation_of: Web/API/Document/head
+---
+{{APIRef("DOM")}}
+
+Devuelve el elemento {{HTMLElement("head")}} del documento actual. Si hay más de un elemento ``, devuelve el primero de estos.
+
+## Sintaxis
+
+```js
+var objRef = document.head;
+```
+
+## Ejemplo
+
+```js
+// en el HTML:
+var aHead = document.head;
+
+alert(aHead.id); // "my-document-head";
+
+alert( document.head === document.querySelector("head") ); // true
+```
+
+## Notas
+
+`document.head` is de sólo lectura. Cualquier intento de asignar un valor a esta propiedad fallará silenciosamente o, en caso de que se encuentre en [Modo estricto de ECMAScript](/es/docs/Web/JavaScript/Reference/Functions_and_function_scope/Strict_mode) en un navegador Gecko, lanzará un [`TypeError`](/es/docs/Web/JavaScript/Reference/Global_Objects/TypeError).
+
+## Especificaciones
+
+{{Specifications}}
+
+## Compatibilidad del Navegador
+
+{{Compat}}
diff --git a/files/es/web/api/document/hidden/index.html b/files/es/web/api/document/hidden/index.html
deleted file mode 100644
index b57337d2f3b3b7..00000000000000
--- a/files/es/web/api/document/hidden/index.html
+++ /dev/null
@@ -1,43 +0,0 @@
----
-title: Document.hidden
-slug: Web/API/Document/hidden
-translation_of: Web/API/Document/hidden
----
-
{{ ApiRef("DOM") }}
-
-
El Document.hidden
Es una propiedad solo de lectura, retorna un valor Booleano que indica si la pagina esta conciderada oculta o no.
-
-
Sintaxis
-
-
var boolean = document.hidden
-
-
Ejemplo
-
-
document.addEventListener("visibilitychange", function() {
- console.log( document.hidden );
- // Modify behavior...
-});
-
-
-
Especificaciones
-
-
-
-
- Especificacion
- Estado
- Comentario
-
-
- {{SpecName('Page Visibility API','#dom-document-hidden', 'Document.hidden')}}
- {{Spec2('Page Visibility API')}}
- definicion inicial
-
-
-
-
-
Compatibilidad con Navegadores
-
-
-
-
{{Compat("api.Document.hidden")}}
diff --git a/files/es/web/api/document/hidden/index.md b/files/es/web/api/document/hidden/index.md
new file mode 100644
index 00000000000000..32100b47e20d82
--- /dev/null
+++ b/files/es/web/api/document/hidden/index.md
@@ -0,0 +1,31 @@
+---
+title: Document.hidden
+slug: Web/API/Document/hidden
+translation_of: Web/API/Document/hidden
+---
+{{ ApiRef("DOM") }}
+
+El **`Document.hidden`** Es una propiedad solo de lectura, retorna un valor Booleano que indica si la pagina esta conciderada oculta o no.
+
+## Sintaxis
+
+```js
+var boolean = document.hidden
+```
+
+## Ejemplo
+
+```js
+document.addEventListener("visibilitychange", function() {
+ console.log( document.hidden );
+ // Modify behavior...
+});
+```
+
+## Especificaciones
+
+{{Specifications}}
+
+## Compatibilidad del Navegador
+
+{{Compat}}
diff --git a/files/es/web/api/document/importnode/index.html b/files/es/web/api/document/importnode/index.html
deleted file mode 100644
index 8b7ea431b74481..00000000000000
--- a/files/es/web/api/document/importnode/index.html
+++ /dev/null
@@ -1,84 +0,0 @@
----
-title: Document.importNode()
-slug: Web/API/Document/importNode
-translation_of: Web/API/Document/importNode
----
-
{{APIRef("DOM")}}
-
-
Crea una copia de un nodo desde un documento externo para ser insertado en el documento actual.
-
-
Sintaxis
-
-
var node = document .importNode(externalNode , deep );
-
-
-
- node
- El nuevo nodo importado al documento actual. El parentNode
del nuevo nodo es null
, ya que aun no ha sido insertado en el arbol del documento.
- externalNode
- El nodo externo a ser importado
- deep
- Un booleano que indica si los descendientes del nodo deben ser importados también.
-
-
-
-
Nota: En la especificación DOM4 (tal y como se ha implementado en Gecko 13.0 {{geckoRelease(13)}}), deep
es un argumento opcional. En el caso de ser omitido, adopta el valor de true
, por lo que se hace una deep copy por defecto. Para realizar una copia superficial (shallow copy ), deep debe ser false
.
-
-
Este comportamiento ha cambiado en la ultima especificación, por lo que si se omite el parámetro deep, éste adopta el valor false
. Aunque aún es opcional, debería ser siempre provisto por razones de compatibilidad. Con Gecko 28.0 {{geckoRelease(28)}}, la consola advertia a los desarrolladores de no omitir el argumento. Empezando con Gecko 29.0 {{geckoRelease(29)}}), se realiza una copia superficial (shallow copy ) por defecto.
-
-
-
Ejemplo
-
-
var iframe = document.getElementsByTagName("iframe")[0];
-var oldNode = iframe.contentWindow.document.getElementById("myNode");
-var newNode = document.importNode(oldNode, true);
-document.getElementById("container").appendChild(newNode);
-
-
-
Notas
-
-
El nodo original no se borra del documento. El nodo importado es un clon del original.
-
-
-
-
Nodes from external documents should be cloned using document.importNode()
(or adopted using document.adoptNode()
) before they can be inserted into the current document. For more on the Node.ownerDocument
issues, see the W3C DOM FAQ .
-
-
Firefox doesn't currently enforce this rule (it did for a while during the development of Firefox 3, but too many sites break when this rule is enforced). We encourage Web developers to fix their code to follow this rule for improved future compatibility.
-
-
-
-
Especificaciones
-
-
-
-
- Specification
- Status
- Comment
-
-
- {{SpecName("DOM WHATWG", "#dom-document-importnode", "document.importNode()")}}
- {{Spec2("DOM WHATWG")}}
-
-
-
- {{SpecName("DOM2 Core", "core.html#Core-Document-importNode", "document.importNode()")}}
- {{Spec2("DOM2 Core")}}
- Initial definition
-
-
-
-
-
Compatibilidad navegadores
-
-
-
-
-
{{Compat("api.Document.importNode")}}
-
-
-
See also
-
-
- {{domxref("document.adoptNode()")}}
-
diff --git a/files/es/web/api/document/importnode/index.md b/files/es/web/api/document/importnode/index.md
new file mode 100644
index 00000000000000..676d5dee0dd2d4
--- /dev/null
+++ b/files/es/web/api/document/importnode/index.md
@@ -0,0 +1,54 @@
+---
+title: Document.importNode()
+slug: Web/API/Document/importNode
+translation_of: Web/API/Document/importNode
+---
+{{APIRef("DOM")}}
+
+Crea una copia de un nodo desde un documento externo para ser insertado en el documento actual.
+
+## Sintaxis
+
+```js
+var node = document.importNode(externalNode, deep);
+```
+
+- `node`
+ - : El nuevo nodo importado al documento actual. El [`parentNode`](/en-US/docs/DOM/Node.parentNode "DOM/Node.parentNode") del nuevo nodo es `null`, ya que aun no ha sido insertado en el arbol del documento.
+- `externalNode`
+ - : El nodo externo a ser importado
+- `deep`
+ - : Un booleano que indica si los descendientes del nodo deben ser importados también.
+
+> **Nota:** En la especificación DOM4 (tal y como se ha implementado en Gecko 13.0 {{geckoRelease(13)}}), `deep` es un argumento opcional. En el caso de ser omitido, adopta el valor de **`true`**, por lo que se hace una _deep copy_ por defecto. Para realizar una copia superficial (_shallow copy_), _deep_ debe ser **`false`**.
+>
+> Este comportamiento ha cambiado en la ultima especificación, por lo que si se omite el parámetro _deep,_ éste adopta el valor **`false`**. Aunque aún es opcional, debería ser siempre provisto por razones de compatibilidad. Con Gecko 28.0 {{geckoRelease(28)}}, la consola advertia a los desarrolladores de no omitir el argumento. Empezando con Gecko 29.0 {{geckoRelease(29)}}), se realiza una copia superficial (_shallow copy_) por defecto.
+
+## Ejemplo
+
+```js
+var iframe = document.getElementsByTagName("iframe")[0];
+var oldNode = iframe.contentWindow.document.getElementById("myNode");
+var newNode = document.importNode(oldNode, true);
+document.getElementById("container").appendChild(newNode);
+```
+
+## Notas
+
+El nodo original no se borra del documento. El nodo importado es un clon del original.
+
+Nodes from external documents should be cloned using [`document.importNode()`](/es/docs/Web/API/Document/importNode "Crea una copia de un nodo desde un documento externo para ser insertado en el documento actual.") (or adopted using [`document.adoptNode()`](/es/docs/Web/API/Document/adoptNode "Adopta un nodo extreno. El nodo y sub subnodos son quitados del documento en que se encuentra y su nuevo ownerDocument se cambia por el actual. El nodo puede entoces ser insertado en el documento actual.")) before they can be inserted into the current document. For more on the [`Node.ownerDocument`](/es/docs/Web/API/Node/ownerDocument "La propiedad de lectura Nodo.ownerDocument devuelve el objecto Document de más alto nivel/jerarquia para ese nodo.") issues, see the [W3C DOM FAQ](https://www.w3.org/DOM/faq.html#ownerdoc).
+
+Firefox doesn't currently enforce this rule (it did for a while during the development of Firefox 3, but too many sites break when this rule is enforced). We encourage Web developers to fix their code to follow this rule for improved future compatibility.
+
+## Especificaciones
+
+{{Specifications}}
+
+## Compatibilidad del Navegador
+
+{{Compat}}
+
+## See also
+
+- {{domxref("document.adoptNode()")}}
diff --git a/files/es/web/api/document/open/index.html b/files/es/web/api/document/open/index.html
deleted file mode 100644
index 452cf58a890118..00000000000000
--- a/files/es/web/api/document/open/index.html
+++ /dev/null
@@ -1,110 +0,0 @@
----
-title: Document.open()
-slug: Web/API/Document/open
-translation_of: Web/API/Document/open
-original_slug: Web/API/Document/abrir
----
-
{{APIRef("DOM")}}
-
-
El método Document.open()
abre un documento para escritura (writing )
-
-
Esto viene con algunos efectos secundarios. Por ejemplo:
-
-
- Todos las atenciones de eventos actualmente registrados en el documento, los nodos dentro del documento o la ventana del documento son eliminados.
- Todos los nodos existentes se eliminan del documento.
-
-
-
Sintaxis
-
-
document.open();
-
-
-
Parametros
-
-
Ninguno.
-
-
Valor devuelto
-
-
Una instancia del objeto Document (Document)
.
-
-
Ejemplos
-
-
El código simple a continuación abre el documento y reemplaza su contenido con un número de diferentes fragmentos HTML antes de cerrarlo nuevamente.
-
-
document.open();
-document.write("<p>Hola mundo!</p>");
-document.write("<p>Soy un pez</p>");
-document.write("<p>El numero es 42</p>");
-document.close();
-
-
Notas
-
-
-
Traducción pendiente para el texto que sigue
-
-
-
An automatic document.open()
call happens when {{domxref("document.write()")}} is called after the page has loaded.
-
-
For years Firefox and Internet Explorer additionally erased all JavaScript variables, etc., in addition to removing all nodes. This is no longer the case.
-
-
Gecko-specific notes
-
-
Starting with Gecko 1.9, this method is subject to the same same-origin policy as other properties, and does not work if doing so would change the document's origin.
-
-
Starting with Gecko 1.9.2, document.open()
uses the principal of the document whose URI it uses, instead of fetching the principal off the stack. As a result, you can no longer call {{domxref("document.write()")}} into an untrusted document from chrome, even using wrappedJSObject
. See Security check basics for more about principals.
-
-
Three-argument document.open()
-
-
There is a lesser-known and little-used three-argument version of document.open()
, which is an alias of {{domxref("Window.open()")}} (see its page for full details).
-
-
This call, for example opens github.com in a new window, with its opener set to null
:
-
-
document .open ('https://www.github.com' ,'' , 'noopener=true' )
-
-
Two-argument document.open()
-
-
Browsers used to support a two-argument document.open()
, with the following signature:
-
-
document.open(type , replace )
-
-
Where type
specified the MIME type of the data you are writing (e.g. text/html
) and replace if set (i.e. a string of "replace"
) specified that the history entry for the new document would replace the current history entry of the document being written to.
-
-
This form is now obsolete; it won't throw an error, but instead just forwards to document.open()
(i.e. is the equivalent of just running it with no arguments). The history-replacement behavior now always happens.
-
-
Specifications
-
-
-
-
- Specification
- Status
- Comment
-
-
-
-
- {{SpecName("HTML WHATWG", "#dom-document-open", "document.open()")}}
- {{Spec2("HTML WHATWG")}}
-
-
-
- {{SpecName("DOM2 HTML", "html.html#ID-72161170", "document.open()")}}
- {{Spec2("DOM2 HTML")}}
-
-
-
-
-
-
Browser compatibility
-
-
-
-
{{Compat("api.Document.open")}}
-
-
See also
-
-
- {{domxref("Document")}}
- {{domxref("Window.open()")}}
-
diff --git a/files/es/web/api/document/open/index.md b/files/es/web/api/document/open/index.md
new file mode 100644
index 00000000000000..d0a52daea2003c
--- /dev/null
+++ b/files/es/web/api/document/open/index.md
@@ -0,0 +1,89 @@
+---
+title: Document.open()
+slug: Web/API/Document/open
+translation_of: Web/API/Document/open
+original_slug: Web/API/Document/abrir
+---
+{{APIRef("DOM")}}
+
+El método **`Document.open()`** abre un documento para escritura ([writing](/es/docs/Web/API/Document/write "en/DOM/document.write"))
+
+Esto viene con algunos efectos secundarios. Por ejemplo:
+
+- Todos las atenciones de eventos actualmente registrados en el documento, los nodos dentro del documento o la ventana del documento son eliminados.
+- Todos los nodos existentes se eliminan del documento.
+
+## Sintaxis
+
+```js
+document.open();
+```
+
+### Parametros
+
+Ninguno.
+
+### Valor devuelto
+
+Una instancia del objeto Document (`Document)`.
+
+## Ejemplos
+
+El código simple a continuación abre el documento y reemplaza su contenido con un número de diferentes fragmentos HTML antes de cerrarlo nuevamente.
+
+```js
+document.open();
+document.write("
Hola mundo!
");
+document.write("
Soy un pez
");
+document.write("
El numero es 42
");
+document.close();
+```
+
+## Notas
+
+> **Nota:** Traducción pendiente para el texto que sigue
+
+An automatic `document.open()` call happens when {{domxref("document.write()")}} is called after the page has loaded.
+
+For years Firefox and Internet Explorer additionally erased all JavaScript variables, etc., in addition to removing all nodes. This is no longer the case.document non-spec'ed parameters to document.open
+
+### Gecko-specific notes
+
+Starting with Gecko 1.9, this method is subject to the same same-origin policy as other properties, and does not work if doing so would change the document's origin.
+
+Starting with Gecko 1.9.2, `document.open()` uses the [principal](/docs/Security_check_basics) of the document whose URI it uses, instead of fetching the principal off the stack. As a result, you can no longer call {{domxref("document.write()")}} into an untrusted document from chrome, even using [`wrappedJSObject`](/en/wrappedJSObject). See [Security check basics](/en/Security_check_basics "en/Security check basics") for more about principals.
+
+## Three-argument document.open()
+
+There is a lesser-known and little-used three-argument version of `document.open()` , which is an alias of {{domxref("Window.open()")}} (see its page for full details).
+
+This call, for example opens github.com in a new window, with its opener set to `null`:
+
+```js
+document.open('https://www.github.com','', 'noopener=true')
+```
+
+## Two-argument document.open()
+
+Browsers used to support a two-argument `document.open()`, with the following signature:
+
+```js
+document.open(type, replace)
+```
+
+Where `type` specified the MIME type of the data you are writing (e.g. `text/html`) and replace if set (i.e. a string of `"replace"`) specified that the history entry for the new document would replace the current history entry of the document being written to.
+
+This form is now obsolete; it won't throw an error, but instead just forwards to `document.open()` (i.e. is the equivalent of just running it with no arguments). The history-replacement behavior now always happens.
+
+## Especificaciones
+
+{{Specifications}}
+
+## Compatibilidad del Navegador
+
+{{Compat}}
+
+## See also
+
+- {{domxref("Document")}}
+- {{domxref("Window.open()")}}
diff --git a/files/es/web/api/document/pointerlockelement/index.html b/files/es/web/api/document/pointerlockelement/index.html
deleted file mode 100644
index b8f33cc545f136..00000000000000
--- a/files/es/web/api/document/pointerlockelement/index.html
+++ /dev/null
@@ -1,47 +0,0 @@
----
-title: Document.pointerLockElement
-slug: Web/API/Document/pointerLockElement
-translation_of: Web/API/DocumentOrShadowRoot/pointerLockElement
-original_slug: Web/API/DocumentOrShadowRoot/pointerLockElement
----
-
{{APIRef("DOM")}}
-
-
La propiedad pointerLockElement
conserva el elemento adquirido, para el evento del mouse, mientras el bloqueo se encuentre activo . Es null
si el bloqueo se encuentra en estado pendiente para bloqueo, o si el bloqueo se ha liberado, es decir ya no se encuentra en estado bloqueado, o si el elemento bloqueado se encuentra en otro documento.
-
-
Sintaxis
-
-
var elemento = document.pointerLockElement;
-
-
-
Valor retornado
-
-
Un {{domxref("Element")}} o null
.
-
-
Especificaciones
-
-
-
-
- Especificación
- Estado
- Comentario
-
-
- {{SpecName('Bloquear puntero','l#extension-to-the-document-interface','Document')}}
- {{Spec2('Pointer lock')}}
- Extiende de la interfaz Document
-
-
-
-
-
Compatibilidad del Navegador
-
-{{Compat("api.Document.pointerLockElement")}}
-
-
Véase también:
-
-
- {{ domxref("Document.exitPointerLock()") }}
- {{ domxref("Element.requestPointerLock()") }}
- Pointer Lock
-
diff --git a/files/es/web/api/document/pointerlockelement/index.md b/files/es/web/api/document/pointerlockelement/index.md
new file mode 100644
index 00000000000000..cf37672557a396
--- /dev/null
+++ b/files/es/web/api/document/pointerlockelement/index.md
@@ -0,0 +1,33 @@
+---
+title: Document.pointerLockElement
+slug: Web/API/Document/pointerLockElement
+translation_of: Web/API/DocumentOrShadowRoot/pointerLockElement
+original_slug: Web/API/DocumentOrShadowRoot/pointerLockElement
+---
+{{APIRef("DOM")}}
+
+La propiedad `pointerLockElement` conserva el elemento adquirido, para el evento del mouse, mientras el bloqueo se encuentre activo . Es `null` si el bloqueo se encuentra en estado pendiente para bloqueo, o si el bloqueo se ha liberado, es decir ya no se encuentra en estado bloqueado, o si el elemento bloqueado se encuentra en otro documento.
+
+## Sintaxis
+
+```js
+var elemento = document.pointerLockElement;
+```
+
+### Valor retornado
+
+Un {{domxref("Element")}} o `null`.
+
+## Especificaciones
+
+{{Specifications}}
+
+## Compatibilidad del Navegador
+
+{{Compat}}
+
+## Véase también:
+
+- {{ domxref("Document.exitPointerLock()") }}
+- {{ domxref("Element.requestPointerLock()") }}
+- [Pointer Lock](/es/docs/WebAPI/Pointer_Lock)
diff --git a/files/es/web/api/document/queryselector/index.html b/files/es/web/api/document/queryselector/index.html
deleted file mode 100644
index 1ad54ba0915b75..00000000000000
--- a/files/es/web/api/document/queryselector/index.html
+++ /dev/null
@@ -1,136 +0,0 @@
----
-title: Document.querySelector()
-slug: Web/API/Document/querySelector
-tags:
- - API
- - Consulta
- - DOM
- - Referencias(2)
- - Referências
- - Selectores
- - metodo
-translation_of: Web/API/Document/querySelector
----
-
{{ ApiRef("DOM") }}
-
-
-
-
-
-
Sintaxis
-
-
element = document.querySelector(selectores);
-
-
-
Donde:
-
-
- element
es un objeto de tipo element .
- selectores
es una cadena de caracteres que contiene uno o más selectores CSS separados por coma.
-
-
-
Ejemplo
-
-
En este ejemplo, obtendremos el primer elemento del documento con la clase "miClase":
-
-
var el = document.querySelector(".miClase");
-
-
-
Ejemplo más útil
-
-
Los Selectores pueden ser muy útiles como se demostrará en el siguiente ejemplo. Aquí, será retornado el primer elemento <input name="login" />
dentro de <div class="user-panel main">
.
-
-
var el = document.querySelector("div.user-panel.main input[name='login']");
-
-
Notas
-
-
- Devuelve null
si no se encuentran coincidencias, de lo contrario, retorna el primer elemento encontrado.
- Si el selector coincide con un ID y este ID es usado erróneamente varias veces en el documento, devuelve el primer elemento encontrado.
- Lanza una excepción de tipo SYNTAX_ERR si el grupo de selectores especificado no es válido.
- querySelector() se introdujo en la API Selectors .
- La cadena de caracteres que se pasa como argumento a querySelector debe seguir la sintaxis CSS.
- Las Pseudo-clases CSS nunca devolverán elementos, tal y como está especificado en la API Selectors
.
- Para que coincidan ID's o selectores que no siguen la sintáxis CSS (usando inapropiadamente dos puntos o un espacio por ejemplo), se debe 'escapar' el carácter con una barra invertida (\). Como la barra invertida es un carácter de 'escape' en JavaScript, si estás indicando una cadena de caracteres literal, debes 'escaparla' dos veces (una para la cadena de caracteres JavaScript y otra para el querySelector):
-
-
-
<div id="foo\bar"></div>
-<div id="foo:bar"></div>
-
-<script>
- console.log('#foo\bar'); // "#fooar"
- document.querySelector('#foo\bar'); // No coincide con nada
-
- console.log('#foo\\bar'); // "#foo\bar"
- console.log('#foo\\\\bar'); // "#foo\\bar"
- document.querySelector('#foo\\\\bar'); // Coincide con el primer div
-
- document.querySelector('#foo:bar'); // No coincide con nada
- document.querySelector('#foo\\:bar'); // Coincide con el segundo div
-</script>
-
-
-
Compatibilidad en los navegadores
-
-
-
-
-
- Plataforma
- Chrome
- Firefox (Gecko)
- Internet Explorer
- Opera
- Safari (WebKit)
-
-
- Soporte Basico
- 1
- 3.5 (1.9.1)
- {{bug(416317)}}
- 8
- 10
- 3.2 (525.3)
- {{Webkitbug("16587")}}
-
-
-
-
-
-
-
-
-
- Plataforma
- Android
- Firefox Mobile (Gecko)
- IE Mobile
- Opera Mobile
- Safari Mobile
-
-
- Soporte Basico
- 2.1
- Si
- 9
- 10.0
- 3.2
-
-
-
-
-
-
Especificaciones
-
-
-
-
Vea también
-
-
- {{domxref("document.querySelectorAll()")}}
- {{domxref("element.querySelector()")}}
- {{domxref("element.querySelectorAll()")}}
- Snippets para querySelector
-
diff --git a/files/es/web/api/document/queryselector/index.md b/files/es/web/api/document/queryselector/index.md
new file mode 100644
index 00000000000000..d33d106f9a087e
--- /dev/null
+++ b/files/es/web/api/document/queryselector/index.md
@@ -0,0 +1,83 @@
+---
+title: Document.querySelector()
+slug: Web/API/Document/querySelector
+tags:
+ - API
+ - Consulta
+ - DOM
+ - Referencias(2)
+ - Referências
+ - Selectores
+ - metodo
+translation_of: Web/API/Document/querySelector
+---
+{{ ApiRef("DOM") }}Devuelve el primer elemento del documento (utilizando un [recorrido primero en profundidad pre ordenado](http://en.wikipedia.org/wiki/Tree_traversal#Pre-order_2) de los nodos del documento) que coincida con el grupo especificado de selectores.
+
+## Sintaxis
+
+```js
+element = document.querySelector(selectores);
+```
+
+Donde:
+
+- `element` es un objeto de tipo [element](/es/docs/DOM/element "en-US/docs/DOM/element").
+- `selectores` es una cadena de caracteres que contiene uno o más [selectores CSS](/es/docs/Web/Guide/CSS/Getting_Started/Selectors) separados por coma.
+
+## Ejemplo
+
+En este ejemplo, obtendremos el primer elemento del documento con la clase "miClase":
+
+```js
+var el = document.querySelector(".miClase");
+```
+
+## Ejemplo más útil
+
+Los _Selectores_ pueden ser muy útiles como se demostrará en el siguiente ejemplo. Aquí, será retornado el primer elemento `
` dentro de `
`.
+
+```js
+var el = document.querySelector("div.user-panel.main input[name='login']");
+```
+
+## Notas
+
+- Devuelve `null` si no se encuentran coincidencias, de lo contrario, retorna el primer elemento encontrado.
+- Si el selector coincide con un ID y este ID es usado erróneamente varias veces en el documento, devuelve el primer elemento encontrado.
+- Lanza una excepción de tipo SYNTAX_ERR si el grupo de selectores especificado no es válido.
+- querySelector() se introdujo en la [API Selectors](https://www.w3.org/TR/selectors-api/).
+- La cadena de caracteres que se pasa como argumento a `querySelector debe seguir la sintaxis CSS.`
+- Las Pseudo-clases CSS nunca devolverán elementos, tal y como está especificado en la [`API Selectors`](https://www.w3.org/TR/selectors-api/#grammar).
+- Para que coincidan ID's o selectores que no siguen la sintáxis CSS (usando inapropiadamente dos puntos o un espacio por ejemplo), se debe 'escapar' el carácter con una barra invertida (\\). Como la barra invertida es un carácter de 'escape' en JavaScript, si estás indicando una cadena de caracteres literal, debes 'escaparla' dos veces (una para la cadena de caracteres JavaScript y otra para el querySelector):
+
+```html
+
+
+
+
+```
+
+## Compatibilidad en los navegadores
+
+{{Compat}}
+
+## Especificaciones
+
+{{Specifications}}
+
+## Vea también
+
+- {{domxref("document.querySelectorAll()")}}
+- {{domxref("element.querySelector()")}}
+- {{domxref("element.querySelectorAll()")}}
+- [Snippets para querySelector](/es/docs/Code_snippets/QuerySelector "en-US/docs/Code snippets/QuerySelector")
diff --git a/files/es/web/api/document/queryselectorall/index.html b/files/es/web/api/document/queryselectorall/index.html
deleted file mode 100644
index a0e4ca0b3cfc71..00000000000000
--- a/files/es/web/api/document/queryselectorall/index.html
+++ /dev/null
@@ -1,179 +0,0 @@
----
-title: Document.querySelectorAll()
-slug: Web/API/Document/querySelectorAll
-tags:
- - API
- - Buscando Elementos
- - DOM
- - Document
- - Encontrando Elementos
- - Localizando Elementos
- - Métodos
- - Referencia
- - Seleccionando Elementos
- - Selectores
- - Selectores CSS
- - querySelectorAll
-translation_of: Web/API/Document/querySelectorAll
----
-
{{ ApiRef("DOM") }}
-
-
El método querySelectorAll()
de un {{domxref("Element")}} devuelve una {{domxref("NodeList")}} estática (no viva) que representa una lista de elementos del documento que coinciden con el grupo de selectores indicados.
-
-
-
Nota: Esto método se implementa en base al método {{domxref("ParentNode.querySelectorAll", "querySelectorAll()")}} del mixin {{domxref("ParentNode")}}.
-
-
-
Sintaxis
-
-
elementList = parentNode .querySelectorAll(selectors );
-
-
-
Parámetros
-
-
- selectors
- Un {{domxref("DOMString")}} que contiene uno o más selectores para buscar coincidencias. Esta cadena de texto debe ser una cadena CSS selector válida; si no lo es, se lanzará una excepción SyntaxError
. Vea Locating DOM elements using selectors para más información acerca de utilizar selectores para identificar elementos. Se pueden especificar varios selectores separándolos utilizando comas.
-
-
-
-
Nota: Los caracteres que no son parte de la sintaxis estándar de CSS deben ser escapados utilizando el caracter de barra invertida. Dado que JavaScript también utiliza el escapado por retroceso, se debe tener especial cuidado al escribir cadenas de texto literales utilizando estos caracteres. Vea Escapando caracteres especiales para más información.
-
-
-
Valor devuelto
-
-
Una {{domxref("NodeList")}} no viva que contenga un objeto {{domxref("Element")}} para cada elemento que coincida con al menos uno de los selectores especificados o una {{domxref("NodeList")}} vacía en caso de que no haya coincidencias.
-
-
-
Nota: Si los selectores indicados incluyen un pseudo-elemento CSS , la lista devuelta siempre estará vacía.
-
-
-
Excepciones
-
-
- SyntaxError
- La sintaxis de la cadena de texto selectors
no es válida.
-
-
-
Ejemplos
-
-
Obteniendo una lista de coincidencias
-
-
Para obtener una {{domxref("NodeList")}} de todos los elementos {{HTMLElement("p")}} en el documento:
-
-
var matches = document.querySelectorAll('p');
-
-
Este ejemplo devuelve una lista de todos los elementos {{HTMLElement("div")}} del documento con una clase "nota
" o "alerta
":
-
-
var matches = document.querySelectorAll('div.nota, div.alerta');
-
-
-
Aquí, se obtiene una lista de elementos <p>
cuyo elemento padre inmediato es un {{domxref("div")}} con la clase "highlighted"
y que está ubicado dentro de un contenedor cuyo ID es "test"
.
-
-
var container = document.querySelector('#test');
-var matches = container.querySelectorAll('div.highlighted > p');
-
-
Este ejemplo usa un selector de atributos para devolver una lista de elementos {{domxref("iframe")}} en el documento que contienen un atributo llamado "data-src"
:
-
-
var matches = document.querySelectorAll('iframe[data-src]');
-
-
Aquí, un selector de atributo se utiliza para devolver una lista de los elementos de una lista cuyo ID es "userlist"
que tiene un atributo "data-active"
cuyo valor es "1"
:
-
-
var container = document.querySelector('#userlist');
-var matches = container.querySelectorAll('li[data-active="1"]');
-
-
Accediendo a las coincidencias
-
-
Una vez que se devuelve la {{domxref("NodeList")}} de los elementos que coinciden, se puede examinar como cualquier array
. Si el array está vacío (lo que significa que su propiedad length
es 0), entonces es que no se encontraron coincidencias.
-
-
En cualquier caso, se puede simplemente utilizar la notación estándar de los arrays para acceder al contenido de la lista. Se puede usar cualquier sentencia de iteración, como por ejemplo:
-
-
var highlightedItems = userList.querySelectorAll('.highlighted');
-
-highlightedItems.forEach(function(userItem) {
- deleteUser(userItem);
-});
-
-
Notas de usuario
-
-
querySelectorAll()
se comporta de forma diferente que la mayoría de librerías DOM de JavaScript, que pueden llevar a resultados inesperados.
-
-
HTML
-
-
Considere este HTML, con sus tres bloques anidados {{HTMLElement("div")}}.
-
-
<div class="outer">
- <div class="select">
- <div class="inner">
- </div>
- </div>
-</div>
-
-
JavaScript
-
-
var select = document.querySelector('.select');
-var inner = select.querySelectorAll('.outer .inner');
-inner.length; // 1, not 0!
-
-
-
En este ejemplo, cuando se selecciona ".outer .inner"
en el contexto el <div>
con la clase "select"
, el elemento con la clase ".inner"
todavía es encontrado, aun sabiendo que .outer
no es descendiente del elemento base sobre el que se realiza la búsqueda (".select"
). Por defecto, querySelectorAll()
sólo verifica que el último elemento en el selector se encuentra dentro del rango de búsqueda.
-
-
La pseudo-clase {{cssxref(":scope")}} recupera el comportamiento esperado, encontrando coincidencias sólo en selectores descendientes del elemento base:
-
-
var select = document.querySelector('.select');
-var inner = select.querySelectorAll(':scope .outer .inner');
-inner.length; // 0
-
-
-
Especificaciones
-
-
-
-
- Especificación
- Estado
- Comentario
-
-
- {{SpecName("DOM WHATWG", "#dom-parentnode-queryselectorall", "ParentNode.querySelectorAll()")}}
- {{Spec2("DOM WHATWG")}}
- Estándar vivo
-
-
- {{SpecName("Selectors API Level 2", "#dom-parentnode-queryselectorall", "ParentNode.querySelectorAll()")}}
- {{Spec2("Selectors API Level 2")}}
- Sin cambios
-
-
- {{SpecName("DOM4", "#dom-parentnode-queryselectorall", "ParentNode.querySelectorAll()")}}
- {{Spec2("DOM4")}}
- Definición inicial
-
-
- {{SpecName("Selectors API Level 1", "#interface-definitions", "document.querySelector()")}}
- {{Spec2("Selectors API Level 1")}}
- Definición original
-
-
-
-
-
Compatibilidad en navegadores
-
-
-
-
-
{{Compat("api.Document.querySelectorAll")}}
-
-
-
Ver también
-
-
diff --git a/files/es/web/api/document/queryselectorall/index.md b/files/es/web/api/document/queryselectorall/index.md
new file mode 100644
index 00000000000000..af5b7021067e92
--- /dev/null
+++ b/files/es/web/api/document/queryselectorall/index.md
@@ -0,0 +1,151 @@
+---
+title: Document.querySelectorAll()
+slug: Web/API/Document/querySelectorAll
+tags:
+ - API
+ - Buscando Elementos
+ - DOM
+ - Document
+ - Encontrando Elementos
+ - Localizando Elementos
+ - Métodos
+ - Referencia
+ - Seleccionando Elementos
+ - Selectores
+ - Selectores CSS
+ - querySelectorAll
+translation_of: Web/API/Document/querySelectorAll
+---
+{{ ApiRef("DOM") }}
+
+El método **`querySelectorAll()`** de un {{domxref("Element")}} devuelve una {{domxref("NodeList")}} estática (no viva) que representa una lista de elementos del documento que coinciden con el grupo de selectores indicados.
+
+> **Nota:** Esto método se implementa en base al método {{domxref("ParentNode.querySelectorAll", "querySelectorAll()")}} del mixin {{domxref("ParentNode")}}.
+
+## Sintaxis
+
+```js
+elementList = parentNode.querySelectorAll(selectors);
+```
+
+### Parámetros
+
+- `selectors`
+ - : Un {{domxref("DOMString")}} que contiene uno o más selectores para buscar coincidencias. Esta cadena de texto debe ser una cadena [CSS selector](/es/docs/Web/CSS/CSS_Selectors) válida; si no lo es, se lanzará una excepción `SyntaxError`. Vea [Locating DOM elements using selectors](/es/docs/Web/API/Document_object_model/Locating_DOM_elements_using_selectors) para más información acerca de utilizar selectores para identificar elementos. Se pueden especificar varios selectores separándolos utilizando comas.
+
+> **Nota:** Los caracteres que no son parte de la sintaxis estándar de CSS deben ser escapados utilizando el caracter de barra invertida. Dado que JavaScript también utiliza el escapado por retroceso, se debe tener especial cuidado al escribir cadenas de texto literales utilizando estos caracteres. Vea [Escapando caracteres especiales](#escapando_caracteres_especiales) para más información.
+
+### Valor devuelto
+
+Una {{domxref("NodeList")}} _no viva_ que contenga un objeto {{domxref("Element")}} para cada elemento que coincida con al menos uno de los selectores especificados o una {{domxref("NodeList")}} vacía en caso de que no haya coincidencias.
+
+> **Nota:** Si los selectores indicados incluyen un [pseudo-elemento CSS](/es/docs/Web/CSS/Pseudo-elements), la lista devuelta siempre estará vacía.
+
+### Excepciones
+
+- `SyntaxError`
+ - : La sintaxis de la cadena de texto `selectors` no es válida.
+
+## Ejemplos
+
+### Obteniendo una lista de coincidencias
+
+Para obtener una {{domxref("NodeList")}} de todos los elementos {{HTMLElement("p")}} en el documento:
+
+```js
+var matches = document.querySelectorAll('p');
+```
+
+Este ejemplo devuelve una lista de todos los elementos {{HTMLElement("div")}} del documento con una clase "`nota`" o "`alerta`":
+
+```js
+var matches = document.querySelectorAll('div.nota, div.alerta');
+```
+
+Aquí, se obtiene una lista de elementos `
` cuyo elemento padre inmediato es un {{domxref("div")}} con la clase `"highlighted"` y que está ubicado dentro de un contenedor cuyo ID es `"test"`.
+
+```js
+var container = document.querySelector('#test');
+var matches = container.querySelectorAll('div.highlighted > p');
+```
+
+Este ejemplo usa un [selector de atributos](es/docs/Web/CSS/Selectores_atributo) para devolver una lista de elementos {{domxref("iframe")}} en el documento que contienen un atributo llamado `"data-src"`:
+
+```js
+var matches = document.querySelectorAll('iframe[data-src]');
+```
+
+Aquí, un selector de atributo se utiliza para devolver una lista de los elementos de una lista cuyo ID es `"userlist"` que tiene un atributo `"data-active"` cuyo valor es `"1"`:
+
+```js
+var container = document.querySelector('#userlist');
+var matches = container.querySelectorAll('li[data-active="1"]');
+```
+
+### Accediendo a las coincidencias
+
+Una vez que se devuelve la {{domxref("NodeList")}} de los elementos que coinciden, se puede examinar como cualquier `array`. Si el array está vacío (lo que significa que su propiedad `length` es 0), entonces es que no se encontraron coincidencias.
+
+En cualquier caso, se puede simplemente utilizar la notación estándar de los arrays para acceder al contenido de la lista. Se puede usar cualquier sentencia de iteración, como por ejemplo:
+
+```js
+var highlightedItems = userList.querySelectorAll('.highlighted');
+
+highlightedItems.forEach(function(userItem) {
+ deleteUser(userItem);
+});
+```
+
+## Notas de usuario
+
+`querySelectorAll()` se comporta de forma diferente que la mayoría de librerías DOM de JavaScript, que pueden llevar a resultados inesperados.
+
+### HTML
+
+Considere este HTML, con sus tres bloques anidados {{HTMLElement("div")}}.
+
+```html
+
+```
+
+### JavaScript
+
+```js
+var select = document.querySelector('.select');
+var inner = select.querySelectorAll('.outer .inner');
+inner.length; // 1, not 0!
+```
+
+En este ejemplo, cuando se selecciona `".outer .inner"` en el contexto el `
` con la clase `"select"`, el elemento con la clase `".inner"` todavía es encontrado, aun sabiendo que `.outer` no es descendiente del elemento base sobre el que se realiza la búsqueda (`".select"`). Por defecto, `querySelectorAll()` sólo verifica que el último elemento en el selector se encuentra dentro del rango de búsqueda.
+
+La pseudo-clase {{cssxref(":scope")}} recupera el comportamiento esperado, encontrando coincidencias sólo en selectores descendientes del elemento base:
+
+```js
+var select = document.querySelector('.select');
+var inner = select.querySelectorAll(':scope .outer .inner');
+inner.length; // 0
+```
+
+## Especificaciones
+
+{{Specifications}}
+
+## Compatibilidad del Navegador
+
+{{Compat}}
+
+## Ver también
+
+- [Localizando elementos DOM utilizando selectores](/es/docs/Web/API/Document_object_model/Locating_DOM_elements_using_selectors)
+- [Selectores de atributo](/es/docs/Web/CSS/Selectores_atributo)
+- [Selectores de atributo](/es/docs/Learn/CSS/Introduction_to_CSS/Selectores_de_Atributos) en el área de aprendizaje de MDN
+- {{domxref("Element.querySelector()")}} y {{domxref("Element.querySelectorAll()")}}
+- {{domxref("Document.querySelector()")}}
+- {{domxref("DocumentFragment.querySelector()")}} y {{domxref("DocumentFragment.querySelectorAll()")}}
+- {{domxref("ParentNode.querySelector()")}} y {{domxref("ParentNode.querySelectorAll()")}}
+- [Snippets de código para `querySelector()`](/es/docs/Code_snippets/QuerySelector "Code_snippets/QuerySelector")
diff --git a/files/es/web/api/document/readystate/index.html b/files/es/web/api/document/readystate/index.html
deleted file mode 100644
index 0c0fa5cc2c4a4e..00000000000000
--- a/files/es/web/api/document/readystate/index.html
+++ /dev/null
@@ -1,104 +0,0 @@
----
-title: Document.readyState
-slug: Web/API/Document/readyState
-translation_of: Web/API/Document/readyState
----
-
{{APIRef("DOM")}} {{ gecko_minversion_header("1.9.2") }}
-
-
Resumen
-
-
La propiedad Document.readyState de un {{ domxref("document") }} describe el estado de carga del documento.
-
-
Valores
-
-
El readyState de un documento puede tener uno de los siguientes valores:
-
-
- loading
- El {{ domxref("document") }} todavía esta cargando.
- interactive
- El documento ha terminado de cargar y ha sido analizado pero los sub-recursos como imágenes, estilos y frames aún siguen cargando. El estado indica que el evento {{event("DOMContentLoaded")}} ha sido disparado.
- complete
- El documento y todos los sub-recursos han cargado completamente. El estado indica que el evento {{event("load")}} ha sido disparado.
-
-
-
Cuando el valor de esta propiedad cambia, un evento {{event("readystatechange")}} se dispara en el objecto {{ domxref("document") }}.
-
-
Sintaxis
-
-
var string = document.readyState;
-
-
-
Ejemplos
-
-
Diferentes estados del readyState
-
-
switch (document.readyState) {
- case "loading":
- // The document is still loading.
- break;
- case "interactive":
- // The document has finished loading. We can now access the DOM elements.
- var span = document.createElement("span");
- span.textContent = "A <span> element.";
- document.body.appendChild(span);
- break;
- case "complete":
- // The page is fully loaded.
- console.log("The first CSS rule is: " + document.styleSheets[0].cssRules[0].cssText);
- break;
-}
-
-
-
readystatechange como alternativa al evento DOMContentLoaded
-
-
// alternative to DOMContentLoaded event
-document.onreadystatechange = function () {
- if (document.readyState == "interactive") {
- initApplication();
- }
-}
-
-
readystatechange como alternativa al evento load
-
-
// alternative to load event
-document.onreadystatechange = function () {
- if (document.readyState == "complete") {
- initApplication();
- }
-}
-
-
Especificación
-
-
-
-
- Especificación
- Estado
- Comentario
-
-
- {{SpecName("HTML WHATWG", "#current-document-readiness", "Document readiness")}}
- {{Spec2('HTML WHATWG')}}
-
-
-
- {{SpecName("HTML5.1", "#current-document-readiness", "Document readiness")}}
- {{Spec2('HTML5.1')}}
-
-
-
- {{SpecName("HTML5 W3C", "#current-document-readiness", "Document readiness")}}
- {{Spec2('HTML5 W3C')}}
- Especificación inicial.
-
-
-
-
-
Ver también
-
-
- Evento {{event("readystatechange")}}
- Evento {{event("DOMContentLoaded")}}
- Evento {{event("load")}}
-
diff --git a/files/es/web/api/document/readystate/index.md b/files/es/web/api/document/readystate/index.md
new file mode 100644
index 00000000000000..c310be799a4612
--- /dev/null
+++ b/files/es/web/api/document/readystate/index.md
@@ -0,0 +1,86 @@
+---
+title: Document.readyState
+slug: Web/API/Document/readyState
+translation_of: Web/API/Document/readyState
+---
+{{APIRef("DOM")}} {{ gecko_minversion_header("1.9.2") }}
+
+## Resumen
+
+La propiedad **Document.readyState** de un {{ domxref("document") }} describe el estado de carga del documento.
+
+### Valores
+
+El readyState de un documento puede tener uno de los siguientes valores:
+
+- loading
+ - : El {{ domxref("document") }} todavía esta cargando.
+- interactive
+ - : El documento ha terminado de cargar y ha sido analizado pero los sub-recursos como imágenes, estilos y frames aún siguen cargando. El estado indica que el evento {{event("DOMContentLoaded")}} ha sido disparado.
+- complete
+ - : El documento y todos los sub-recursos han cargado completamente. El estado indica que el evento {{event("load")}} ha sido disparado.
+
+Cuando el valor de esta propiedad cambia, un evento {{event("readystatechange")}} se dispara en el objecto {{ domxref("document") }}.
+
+## Sintaxis
+
+```js
+var string = document.readyState;
+```
+
+## Ejemplos
+
+### Diferentes estados del readyState
+
+```js
+switch (document.readyState) {
+ case "loading":
+ // The document is still loading.
+ break;
+ case "interactive":
+ // The document has finished loading. We can now access the DOM elements.
+ var span = document.createElement("span");
+ span.textContent = "A
element.";
+ document.body.appendChild(span);
+ break;
+ case "complete":
+ // The page is fully loaded.
+ console.log("The first CSS rule is: " + document.styleSheets[0].cssRules[0].cssText);
+ break;
+}
+```
+
+### readystatechange como alternativa al evento DOMContentLoaded
+
+```js
+// alternative to DOMContentLoaded event
+document.onreadystatechange = function () {
+ if (document.readyState == "interactive") {
+ initApplication();
+ }
+}
+```
+
+### readystatechange como alternativa al evento load
+
+```js
+// alternative to load event
+document.onreadystatechange = function () {
+ if (document.readyState == "complete") {
+ initApplication();
+ }
+}
+```
+
+## Especificaciones
+
+{{Specifications}}
+
+## Compatibilidad del Navegador
+
+{{Compat}}
+## Ver también
+
+- Evento {{event("readystatechange")}}
+- Evento {{event("DOMContentLoaded")}}
+- Evento {{event("load")}}
diff --git a/files/es/web/api/document/registerelement/index.html b/files/es/web/api/document/registerelement/index.html
deleted file mode 100644
index 9e74c264a49fd3..00000000000000
--- a/files/es/web/api/document/registerelement/index.html
+++ /dev/null
@@ -1,69 +0,0 @@
----
-title: Document.registerElement()
-slug: Web/API/Document/registerElement
-translation_of: Web/API/Document/registerElement
----
-{{APIRef("DOM")}}{{Deprecated_header}}
-
-El Document.registerElement()
registra un nuevo elemento personalizado en el navegador y devuelve un constructor para el nuevo elemento.
-
-
-
-Sintaxis
-
-var constructor = document.registerElement(tag-name , options );
-
-Parámetros
-
-
- tag-name
- El nombre del elemento personalizado. El nombre debe contener un guión (-), por ejemplo my-tag
.
- options {{optional_inline}}
- Un objeto que da nombre al prototipo que sirve de base para el elemento personalizado, y una etiqueta existente para extender. Ambos son opcionales.
-
-
-Ejemplo
-
-Aquí hay un ejemplo muy simple:
-
-var Mytag = document.registerElement('my-tag');
-
-
-Ahora el nuevo tag se ha registrado en el navegador. La variable MyTag contiene un constructor que lo puedes usar para crear un elemento my-tag en el documento de la siguiente manera:
-
-document.body.appendChild(new Mytag());
-
-Esto inserta un elemento my-tag vacío que será visible si utiliza las herramientas de desarrollo del navegador. No será visible si usa la capacidad de ver el código fuente del navegador. Y no será visible en el navegador a menos que agregue algún contenido para la etiqueta. Esta es la manera de agregar contenido a la nueva etiqueta:
-
-var mytag = document.getElementsByTagName("my-tag")[0];
-mytag.textContent = "I am a my-tag element.";
-
-
-Especificaciones
-
-
-
-
- Especificación
- Estado
- Comentario
-
-
- {{SpecName('Custom Elements')}}
- {{Spec2('Custom Elements')}}
- Definición inicial
-
-
-
-
-Compatibilidad del navegador
-
-{{Compat("api.Document.registerElement")}}
-
-Ver también
-
-
diff --git a/files/es/web/api/document/registerelement/index.md b/files/es/web/api/document/registerelement/index.md
new file mode 100644
index 00000000000000..f411144d2c81fe
--- /dev/null
+++ b/files/es/web/api/document/registerelement/index.md
@@ -0,0 +1,56 @@
+---
+title: Document.registerElement()
+slug: Web/API/Document/registerElement
+translation_of: Web/API/Document/registerElement
+---
+{{APIRef("DOM")}}{{Deprecated_header}}
+
+El **`Document.registerElement()`** registra un nuevo [elemento personalizado](/es/docs/Web/Web_Components/Custom_Elements) en el navegador y devuelve un constructor para el nuevo elemento.
+
+> **Nota:** Esta es una tecnología experimental. El navegador que utilice debe ser compatible con Web Components. Ver [Web Components habilitados en Firefox](/es/docs/Web/Web_Components#Enabling_Web_Components_in_Firefox).
+
+## Sintaxis
+
+```js
+var constructor = document.registerElement(tag-name, options);
+```
+
+### Parámetros
+
+- _tag-name_
+ - : El nombre del elemento personalizado. El nombre debe contener un guión (-), por ejemplo `my-tag`.
+- _options {{optional_inline}}_
+ - : Un objeto que da nombre al prototipo que sirve de base para el elemento personalizado, y una etiqueta existente para extender. Ambos son opcionales.
+
+## Ejemplo
+
+Aquí hay un ejemplo muy simple:
+
+```js
+var Mytag = document.registerElement('my-tag');
+```
+
+Ahora el nuevo tag se ha registrado en el navegador. La variable MyTag contiene un constructor que lo puedes usar para crear un elemento my-tag en el documento de la siguiente manera:
+
+```js
+document.body.appendChild(new Mytag());
+```
+
+Esto inserta un elemento my-tag vacío que será visible si utiliza las herramientas de desarrollo del navegador. No será visible si usa la capacidad de ver el código fuente del navegador. Y no será visible en el navegador a menos que agregue algún contenido para la etiqueta. Esta es la manera de agregar contenido a la nueva etiqueta:
+
+```js
+var mytag = document.getElementsByTagName("my-tag")[0];
+mytag.textContent = "I am a my-tag element.";
+```
+
+## Especificaciones
+
+{{Specifications}}
+
+## Compatibilidad del Navegador
+
+{{Compat}}
+
+## Ver también
+
+- [Custom Elements](/es/docs/Web/Web_Components/Custom_Elements)
diff --git a/files/es/web/api/document/scripts/index.html b/files/es/web/api/document/scripts/index.html
deleted file mode 100644
index fd25bc40a98c22..00000000000000
--- a/files/es/web/api/document/scripts/index.html
+++ /dev/null
@@ -1,38 +0,0 @@
----
-title: Document.scripts
-slug: Web/API/Document/scripts
-translation_of: Web/API/Document/scripts
----
-{{APIRef("DOM")}}
-
-Devuelve una lista de elementos {{HTMLElement("script")}} ubicados en el documento. El objeto devuelto es una colección {{domxref("HTMLCollection")}}.
-
-Sintáxis
-
-var scriptList
= document.scripts;
-
-
-El objeto scriptList
devuelto es una {{domxref("HTMLCollection")}}. Se puede utilizar como un array corriente para acceder a sus elementos.
-
-Ejemplo
-
-Este ejemplo busca demostrar la existencia de objetos {{HTMLElement("script")}} en el documento.
-
-var scripts = document.scripts;
-
-if (scripts.length) {
- alert("This page has scripts!");
-}
-
-
-Compatibilidad de navegadores
-
-{{Compat("api.Document.scripts")}}
-
-
-
-Especificaciones
-
-
- {{spec("http://www.whatwg.org/specs/web-apps/current-work/multipage/dom.html#dom-document-scripts", "DOM: document scripts")}}
-
diff --git a/files/es/web/api/document/scripts/index.md b/files/es/web/api/document/scripts/index.md
new file mode 100644
index 00000000000000..a7ca79b5345607
--- /dev/null
+++ b/files/es/web/api/document/scripts/index.md
@@ -0,0 +1,36 @@
+---
+title: Document.scripts
+slug: Web/API/Document/scripts
+translation_of: Web/API/Document/scripts
+---
+{{APIRef("DOM")}}
+
+Devuelve una lista de elementos {{HTMLElement("script")}} ubicados en el documento. El objeto devuelto es una colección {{domxref("HTMLCollection")}}.
+
+## Sintáxis
+
+```js
+var scriptList = document.scripts;
+```
+
+El objeto `scriptList` devuelto es una {{domxref("HTMLCollection")}}. Se puede utilizar como un array corriente para acceder a sus elementos.
+
+## Ejemplo
+
+Este ejemplo busca demostrar la existencia de objetos {{HTMLElement("script")}} en el documento.
+
+```js
+var scripts = document.scripts;
+
+if (scripts.length) {
+ alert("This page has scripts!");
+}
+```
+
+## Especificaciones
+
+{{Specifications}}
+
+## Compatibilidad del Navegador
+
+{{Compat}}
diff --git a/files/es/web/api/document/scroll_event/index.html b/files/es/web/api/document/scroll_event/index.html
deleted file mode 100644
index a5a590ec74febd..00000000000000
--- a/files/es/web/api/document/scroll_event/index.html
+++ /dev/null
@@ -1,104 +0,0 @@
----
-title: scroll
-slug: Web/API/Document/scroll_event
-translation_of: Web/API/Document/scroll_event
----
-El evento scroll
se produce cuando la vista del documento o un elemento es deslizado.
-
-
-
-
- Especificación
- DOM L3 , CSSOM View
- Interfaz
- UIEvent
- Bubbles
- No en elementos, pero burbujea a la vista default cuando se ejecuta en el documento
- Cancelable
- No
- Objetivo
- defaultView, Document, Element
- Acción por defecto
- Ninguna
-
-
-
-Propiedades
-
-
-
-
- Property
- Type
- Description
-
-
-
-
- target
{{readonlyInline}}
- EventTarget
- El objetivo de evento (el objetivo superior en el árbol DOM).
-
-
- type
{{readonlyInline}}
- DOMString
- El tipo de evento.
-
-
- bubbles
{{readonlyInline}}
- Boolean
- Si el evento burbujea o no.
-
-
- cancelable
{{readonlyInline}}
- Boolean
- Si el evento puede ser cancelado o no.
-
-
- view
{{readonlyInline}}
- WindowProxy
- document.defaultView
(window
de el documento)
-
-
- detail
{{readonlyInline}}
- long
(float
)
- 0.
-
-
-
-
-Ejemplo
-
-Dado que los eventos scroll
pueden ejecutarse a un ritmo elevado, el event handler no debería ejecutar operaciones computacionalmente costosas como modificaciones en el DOM. En cambio, se recomienda acelerar el evento utilizando requestAnimationFrame , setTimeout or customEvent , de este modo:
-
-
-
-// Referencia: http://www.html5rocks.com/en/tutorials/speed/animations/
-
-var last_known_scroll_position = 0;
-var ticking = false;
-
-function doSomething(scroll_pos) {
- // Hacer algo con la posición del scroll
-}
-
-window.addEventListener('scroll', function(e) {
- last_known_scroll_position = window.scrollY;
- if (!ticking) {
- window.requestAnimationFrame(function() {
- doSomething(last_known_scroll_position);
- ticking = false;
- });
- }
- ticking = true;
-});
-
-
-
-Más ejemplos se pueden ver en el evento resize .
-
-Compatibilidad en navegadores
-
-iOS UIWebView
-
-En iOS UIWebViews, los eventos scroll
no se ejecutan mientras el escroleo/deslizamiento se lleva a cabo; solo son ejecutados cuando el deslizamiento terminó. Ver Bootstrap issue #16202 . Safari y WKWebViews no se ven afectados por este bug.
diff --git a/files/es/web/api/document/scroll_event/index.md b/files/es/web/api/document/scroll_event/index.md
new file mode 100644
index 00000000000000..650d8a8c505ac6
--- /dev/null
+++ b/files/es/web/api/document/scroll_event/index.md
@@ -0,0 +1,70 @@
+---
+title: scroll
+slug: Web/API/Document/scroll_event
+translation_of: Web/API/Document/scroll_event
+---
+{{ ApiRef() }}
+
+El evento **`scroll`** se produce cuando la vista del documento o un elemento es deslizado.
+
+## Información General
+
+- Interfaz
+ - : UIEvent
+- Bubbles
+ - : No en elementos, pero burbujea a la vista default cuando se ejecuta en el documento
+- Cancelable
+ - : No
+- Objetivo
+ - : defaultView, Document, Element
+- Acción por defecto
+ - : Ninguna
+
+## Propiedades
+
+| Property | Type | Description |
+| ------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ |
+| `target` {{readonlyInline}} | [`EventTarget`](/es/docs/Web/API/EventTarget "EventTarget is an interface implemented by objects that can receive events and may have listeners for them.") | El objetivo de evento (el objetivo superior en el árbol DOM). |
+| `type` {{readonlyInline}} | [`DOMString`](/es/docs/Web/API/DOMString "DOMString is a UTF-16 String. As JavaScript already uses such strings, DOMString is mapped directly to a String.") | El tipo de evento. |
+| `bubbles` {{readonlyInline}} | [`Boolean`](/es/docs/Web/API/Boolean "The Boolean object is an object wrapper for a boolean value.") | Si el evento burbujea o no. |
+| `cancelable` {{readonlyInline}} | [`Boolean`](/es/docs/Web/API/Boolean "The Boolean object is an object wrapper for a boolean value.") | Si el evento puede ser cancelado o no. |
+| `view` {{readonlyInline}} | [`WindowProxy`](/es/docs/Web/API/WindowProxy "The documentation about this has not yet been written; please consider contributing!") | [`document.defaultView`](/es/docs/Web/API/Document/defaultView "In browsers, document.defaultView returns the window object associated with a document, or null if none is available.") (`window` de el documento) |
+| `detail` {{readonlyInline}} | `long` (`float`) | 0. |
+
+## Ejemplo
+
+Dado que los eventos `scroll` pueden ejecutarse a un ritmo elevado, el _event handler_ no debería ejecutar operaciones computacionalmente costosas como modificaciones en el DOM. En cambio, se recomienda acelerar el evento utilizando [requestAnimationFrame](/es/docs/DOM/window.requestAnimationFrame), [setTimeout](/es/docs/Web/API/WindowTimers/setTimeout) or [customEvent](/es/docs/Web/API/CustomEvent), de este modo:
+
+#### Optimización de Scroll con window\.requestAnimationFrame
+
+```js
+// Referencia: http://www.html5rocks.com/en/tutorials/speed/animations/
+
+var last_known_scroll_position = 0;
+var ticking = false;
+
+function doSomething(scroll_pos) {
+ // Hacer algo con la posición del scroll
+}
+
+window.addEventListener('scroll', function(e) {
+ last_known_scroll_position = window.scrollY;
+ if (!ticking) {
+ window.requestAnimationFrame(function() {
+ doSomething(last_known_scroll_position);
+ ticking = false;
+ });
+ }
+ ticking = true;
+});
+```
+
+Más ejemplos se pueden ver en el evento [resize](/es/docs/Web/Events/resize#Example).
+
+## Especificaciones
+
+{{Specifications}}
+
+## Compatibilidad del Navegador
+
+{{Compat}}
diff --git a/files/es/web/api/document/stylesheets/index.html b/files/es/web/api/document/stylesheets/index.html
deleted file mode 100644
index f17c721fda8f04..00000000000000
--- a/files/es/web/api/document/stylesheets/index.html
+++ /dev/null
@@ -1,23 +0,0 @@
----
-title: Document.styleSheets
-slug: Web/API/Document/styleSheets
-translation_of: Web/API/DocumentOrShadowRoot/styleSheets
-translation_of_original: Web/API/Document/styleSheets
-original_slug: Web/API/DocumentOrShadowRoot/styleSheets
----
-{{ ApiRef() }}
-Resumen
-Devuelve una lista de objetos de tipo stylesheet para las hojas de estilo que están específicamente enlazadas o contenidas en el documento.
-Propiedades
-styleSheetList.length
- devuelve el número de objetos de tipo stylesheet contenidos en el objeto.
-Sintaxis
-styleSheetList = document .styleSheets
-
-El objeto devuelto es del tipo StyleSheetList .
-Es una colección ordenada de objetos de tipo stylesheet . styleSheetList .item(index )
o simplemente styleSheetList {{ mediawiki.external('
-
- index
- ') }}
devuelve un único objeto de tipo stylesheet con el índice especificado (el índice es de origen 0).
-Especificación
-DOM Level 2 Style: styleSheets
-{{ languages( { "ja": "ja/DOM/document.styleSheets", "pl": "pl/DOM/document.styleSheets" } ) }}
diff --git a/files/es/web/api/document/stylesheets/index.md b/files/es/web/api/document/stylesheets/index.md
new file mode 100644
index 00000000000000..f504b11609f332
--- /dev/null
+++ b/files/es/web/api/document/stylesheets/index.md
@@ -0,0 +1,37 @@
+---
+title: Document.styleSheets
+slug: Web/API/Document/styleSheets
+translation_of: Web/API/DocumentOrShadowRoot/styleSheets
+translation_of_original: Web/API/Document/styleSheets
+original_slug: Web/API/DocumentOrShadowRoot/styleSheets
+---
+{{ ApiRef() }}
+
+### Resumen
+
+Devuelve una lista de objetos de tipo [stylesheet](/es/DOM/stylesheet "es/DOM/stylesheet") para las hojas de estilo que están específicamente enlazadas o contenidas en el documento.
+
+### Propiedades
+
+`styleSheetList.length` - devuelve el número de objetos de tipo stylesheet contenidos en el objeto.
+
+### Sintaxis
+
+```js
+styleSheetList = document.styleSheets
+```
+
+El objeto devuelto es del tipo [StyleSheetList](https://www.w3.org/TR/DOM-Level-2-Style/stylesheets.html#StyleSheets-DocumentStyle-styleSheets).
+
+Es una colección ordenada de objetos de tipo [stylesheet](/es/DOM/stylesheet "es/DOM/stylesheet"). `styleSheetList.item(index)` o simplemente `styleSheetList{{ mediawiki.external('
+
+ index
+ ') }}` devuelve un único objeto de tipo stylesheet con el índice especificado (el índice es de origen 0).
+
+## Especificaciones
+
+{{Specifications}}
+
+## Compatibilidad del Navegador
+
+{{Compat}}
diff --git a/files/es/web/api/document/url/index.html b/files/es/web/api/document/url/index.html
deleted file mode 100644
index 3d125432ef0d48..00000000000000
--- a/files/es/web/api/document/url/index.html
+++ /dev/null
@@ -1,71 +0,0 @@
----
-title: document.URL
-slug: Web/API/Document/URL
-tags:
- - API
- - Documento
- - HTML DOM
- - Propiedad
- - Referencia
-translation_of: Web/API/Document/URL
----
-{{APIRef("DOM")}}
-
-La propiedad de sólo lectura URL
de la interfaz {{domxref("Document")}} devuelve la ubicación del documento como una cadena de texto.
-
-Sintaxis
-
-var string = document.URL
-
-Ejemplo
-
-JavaScript
-
-document.getElementById("url").textContent = document.URL;
-
-HTML
-
-<p id="urlText">
- URL:<br/>
- <span id="url">La URL va aquí</span>
-</p>
-
-Resultado
-
-{{EmbedLiveSample("Example", "100%", 100)}}
-
-Especificaciones
-
-
-
-
- Especificación
- Estado
- Comentario
-
-
-
-
- {{SpecName("DOM WHATWG", "#dom-document-url", "Document.URL")}}
- {{Spec2("DOM WHATWG")}}
- Define que la propiedad es una {{domxref("USVString")}} en lugar de un {{domxref("DOMString")}}.
-
-
- {{SpecName("DOM1", "level-one-html.html#attribute-URL", "Document.URL")}}
- {{Spec2("DOM1")}}
- Definición inicial
-
-
-
-
-Compatibilidad con navegadores
-
-
-
{{Compat("api.Document.URL")}}
-
-
-Ver también
-
-
- {{domxref("HTMLDocument")}}
-
diff --git a/files/es/web/api/document/url/index.md b/files/es/web/api/document/url/index.md
new file mode 100644
index 00000000000000..7bb5ba89b3521e
--- /dev/null
+++ b/files/es/web/api/document/url/index.md
@@ -0,0 +1,53 @@
+---
+title: document.URL
+slug: Web/API/Document/URL
+tags:
+ - API
+ - Documento
+ - HTML DOM
+ - Propiedad
+ - Referencia
+translation_of: Web/API/Document/URL
+---
+{{APIRef("DOM")}}
+
+La propiedad de sólo lectura **`URL`** de la interfaz {{domxref("Document")}} devuelve la ubicación del documento como una cadena de texto.
+
+## Sintaxis
+
+```js
+var string = document.URL
+```
+
+## Ejemplo
+
+### JavaScript
+
+```js
+document.getElementById("url").textContent = document.URL;
+```
+
+### HTML
+
+```html
+
+ URL:
+ La URL va aquí
+
+```
+
+### Resultado
+
+{{EmbedLiveSample("Example", "100%", 100)}}
+
+## Especificaciones
+
+{{Specifications}}
+
+## Compatibilidad del Navegador
+
+{{Compat}}
+
+## Ver también
+
+- {{domxref("HTMLDocument")}}
diff --git a/files/es/web/api/document/write/index.html b/files/es/web/api/document/write/index.html
deleted file mode 100644
index 1c88dff68f36d3..00000000000000
--- a/files/es/web/api/document/write/index.html
+++ /dev/null
@@ -1,76 +0,0 @@
----
-title: Document.write()
-slug: Web/API/Document/write
-tags:
- - API
- - DOM
- - Documentación
- - Referencia
- - metodo
-translation_of: Web/API/Document/write
----
-{{ ApiRef("DOM") }}
-
-
- Escribe una cadena de texto dentro del hilo de un document
abierto por document.open() .
-
-
-
-Sintaxis
-
-document.write(texto);
-
-
-texto
es una cadena de texto que contiene el texto a ser impreso en el documento.
-
-Example
-
-<html>
-
-<head>
- <title>Ejemplo de write</title>
-
- <script>
- function nuevoContenido() {
- alert("carga el contenido nuevo");
- document.open();
- document.write("<h1>Quita el contenido viejo - Agrega el contenido nuevo!</h1>");
- document.close();
- }
- </script>
-</head>
-
-<body onload="nuevoContenido();">
- <p>Algo de contenido original del documento</p>
-</body>
-
-</html>
-
-Notas
-
-Escribir a un documento que ya tiene contenido cargado previamente sin llamar a document.open()
, automáticamente hará una llamada a document.open(). Después de haber finalizado la escritura del documento, es recomendable llamar a document.close()
, para informar al navegador que la carga de la página ya ha terminado. El texto que escribas allí es convertido a la estructura tipificada de HTML dentro del modelo estructural del documento. En el ejemplo de más arriba, el elemento h1 se convierte en un nodo dentro del documento.
-
-Si la llamada a document.write() se ejecuta dentro de una etiqueta <script>
incluído en el HTML, entonces la llamada a document.open() nunca ocurrirá. Por ejemplo:
-
-<script>
- document.write("<h1>Título Principal</h1>")
-</script>
-
-
-Nota: document.write
y
document.writeln
no funcionan dentro de un documento XHTML (obtendrás un mensaje de error que dice "Operación no soportada" ("Operation is not supported") [
NS_ERROR_DOM_NOT_SUPPORTED_ERR
] en la consola). Esto sucede cuando abrimos un archivo local de extensión .xhtml o para cualquier document servido con un
MIME del tipo application/xhtml+xml
. Hay más información disponible en
W3C XHTML FAQ .
-
-Nota: document.write
en scripts de modo
diferido o
asyncrónico serán ignorados, y recibirás un mensaje de error en la consola del tipo "Una llamada a document.write() desde un script cargado asincrónicamente fue ignorado" ("A call to
document.write()
from an asynchronously-loaded external script was ignored").
-
-Especificaciones
-
-
-
-También puedes ver
-
-
- {{ domxref("element.innerHTML") }}
- {{ domxref("document.createElement()") }}
-
diff --git a/files/es/web/api/document/write/index.md b/files/es/web/api/document/write/index.md
new file mode 100644
index 00000000000000..0420d589dff2c9
--- /dev/null
+++ b/files/es/web/api/document/write/index.md
@@ -0,0 +1,77 @@
+---
+title: Document.write()
+slug: Web/API/Document/write
+tags:
+ - API
+ - DOM
+ - Documentación
+ - Referencia
+ - metodo
+translation_of: Web/API/Document/write
+---
+{{ ApiRef("DOM") }}
+
+Escribe una cadena de texto dentro del hilo de un `document `abierto por [document.open()](/es/docs/Web/API/document.open).
+
+> **Nota:** Dado que `document.write` escribe directo al hilo **(stream**) de un documento, la llamada a `document.write` en un documento ya cargado automáticamente ejecuta `document.open`, [lo cual limpiará todo el contenido del documento en cuestión](/es/docs/Web/API/document.open#Notes).
+
+## Sintaxis
+
+```js
+document.write(texto);
+```
+
+`texto` es una cadena de texto que contiene el texto a ser impreso en el documento.
+
+### Example
+
+```html
+
+
+
+ Ejemplo de write
+
+
+
+
+
+ Algo de contenido original del documento
+
+
+
+```
+
+## Notas
+
+Escribir a un documento que ya tiene contenido cargado previamente sin llamar a [`document.open()`](/es/docs/Web/API/document.open), automáticamente hará una llamada a document.open(). Después de haber finalizado la escritura del documento, es recomendable llamar a [`document.close()`](/es/docs/Web/API/document.close), para informar al navegador que la carga de la página ya ha terminado. El texto que escribas allí es convertido a la estructura tipificada de HTML dentro del modelo estructural del documento. En el ejemplo de más arriba, el elemento h1 se convierte en un nodo dentro del documento.
+
+Si la llamada a document.write() se ejecuta dentro de una etiqueta `
+```
+
+> **Nota:** `document.write` y `document.writeln` [no funcionan dentro de un documento XHTML](/es/docs/Archive/Web/Writing_JavaScript_for_HTML) (obtendrás un mensaje de error que dice "Operación no soportada" ("Operation is not supported") \[`NS_ERROR_DOM_NOT_SUPPORTED_ERR`] en la consola). Esto sucede cuando abrimos un archivo local de extensión .xhtml o para cualquier document servido con un [MIME del tipo ](/es/docs/Glossary/MIME_type)`application/xhtml+xml`. Hay más información disponible en [W3C XHTML FAQ](https://www.w3.org/MarkUp/2004/xhtml-faq#docwrite).
+
+> **Nota:** `document.write` en scripts de modo [diferido](/es/docs/Web/HTML/Element/script#attr-defer) o [asyncrónico](/es/docs/Web/HTML/Element/script#attr-async) serán ignorados, y recibirás un mensaje de error en la consola del tipo "Una llamada a document.write() desde un script cargado asincrónicamente fue ignorado" ("A call to `document.write()` from an asynchronously-loaded external script was ignored").
+
+## Especificaciones
+
+{{Specifications}}
+
+## Compatibilidad del Navegador
+
+{{Compat}}
+## También puedes ver
+
+- {{ domxref("element.innerHTML") }}
+- {{ domxref("document.createElement()") }}
diff --git a/files/es/web/api/document/writeln/index.html b/files/es/web/api/document/writeln/index.html
deleted file mode 100644
index be9910a516e928..00000000000000
--- a/files/es/web/api/document/writeln/index.html
+++ /dev/null
@@ -1,40 +0,0 @@
----
-title: Document.writeln()
-slug: Web/API/Document/writeln
-translation_of: Web/API/Document/writeln
----
-{{ ApiRef("DOM") }}
-
-Escribe una cadena de texto en el documento, seguida de una nueva línea.
-
-
-
-Sintaxis
-
-document.writeln(línea );
-
-
-Parámetros
-
-
- línea
es la cadena conteniendo una línea de texto.
-
-
-Ejemplo
-
-document.writeln("<p>¡Hola mundo!</p>");
-
-
-Notas
-
-document.writeln actúa igual que document.write exepto que agrega un carácter de nueva línea (\n
) al final del texto a escribir.
-
-Nota: document.write
y
document.writeln
no funcionan dentro de un documento XHTML (obtendrás un mensaje de error que dice "Operación no soportada" ("Operation is not supported") [
NS_ERROR_DOM_NOT_SUPPORTED_ERR
] en la consola). Esto sucede cuando abrimos un archivo local de extensión .xhtml o para cualquier document servido con un
MIME del tipo application/xhtml+xml
. Hay más información disponible en
W3C XHTML FAQ .
-
-Nota: document.writeln
y
document.write
en scripts de modo
diferido o
asyncrónico serán ignorados, y recibirás un mensaje de error en la consola del tipo "Una llamada a document.write() desde un script cargado asincrónicamente fue ignorado" ("A call to
document.write()
from an asynchronously-loaded external script was ignored").
-
-Especificación
-
-writeln
diff --git a/files/es/web/api/document/writeln/index.md b/files/es/web/api/document/writeln/index.md
new file mode 100644
index 00000000000000..6f0405616bc3fd
--- /dev/null
+++ b/files/es/web/api/document/writeln/index.md
@@ -0,0 +1,42 @@
+---
+title: Document.writeln()
+slug: Web/API/Document/writeln
+translation_of: Web/API/Document/writeln
+---
+{{ ApiRef("DOM") }}
+
+Escribe una cadena de texto en el documento, seguida de una nueva línea.
+
+> **Nota:** Dado que `document.writeln` (al igual que `document.write)` escribe directo al hilo (`stream`) de un documento, la llamada a `document.write` en un documento ya cargado automáticamente ejecuta `document.open`, [lo cual limpiará todo el contenido del documento en cuestión](/es/docs/Web/API/document.open#Notes).
+
+## Sintaxis
+
+```js
+document.writeln(línea);
+```
+
+### Parámetros
+
+- `línea` es la cadena conteniendo una línea de texto.
+
+## Ejemplo
+
+```js
+document.writeln("¡Hola mundo!
");
+```
+
+## Notas
+
+**document.writeln** actúa igual que [document.write](/es/DOM/document.write "en/DOM/document.write") exepto que agrega un carácter de nueva línea (`\n`) al final del texto a escribir.
+
+> **Nota:** `document.write` y `document.writeln` [no funcionan dentro de un documento XHTML](/es/docs/Archive/Web/Writing_JavaScript_for_HTML) (obtendrás un mensaje de error que dice "Operación no soportada" ("Operation is not supported") \[`NS_ERROR_DOM_NOT_SUPPORTED_ERR`] en la consola). Esto sucede cuando abrimos un archivo local de extensión .xhtml o para cualquier document servido con un [MIME del tipo ](/es/docs/Glossary/MIME_type)`application/xhtml+xml`. Hay más información disponible en [W3C XHTML FAQ](https://www.w3.org/MarkUp/2004/xhtml-faq#docwrite).
+
+> **Nota:** `document.writeln` y `document.write` en scripts de modo [diferido](/es/docs/Web/HTML/Element/script#attr-defer) o [asyncrónico](/es/docs/Web/HTML/Element/script#attr-async) serán ignorados, y recibirás un mensaje de error en la consola del tipo "Una llamada a document.write() desde un script cargado asincrónicamente fue ignorado" ("A call to `document.write()` from an asynchronously-loaded external script was ignored").
+
+## Especificaciones
+
+{{Specifications}}
+
+## Compatibilidad del Navegador
+
+{{Compat}}