Conceptos Clave y Ejemplos Prácticos de HTML, CSS y JavaScript
Enviado por Programa Chuletas y clasificado en Informática y Telecomunicaciones
Escrito el en
español con un tamaño de 14,23 KB
Conceptos Fundamentales de HTML, CSS y JavaScript
Selectores y Propiedades CSS
- El selector
input[type=web]#personalbusca un elemento con el atributotype="web"y el IDpersonal. padding: 0px;: No afecta a la separación externa.margin: 30px;: Establece una separación vertical de 30px entre los párrafos.Media screen AND (min-height:620px): Aplica estilos solo si la pantalla tiene una altura mínima de 620px.- Para crear una lista ordenada con ítems en línea:
display: inline;. - El ancho de un
divocupa el 100% del ancho disponible. - Cuanto más específico sea un selector CSS, mayor preferencia tendrá. Ejemplo:
font-size:40px; color: blue;tiene más preferencia que solofont-size:40px;. vh,emypcson valores de longitud (width) válidos en CSS.szNO es un valor válido.- Para ocultar un elemento específico dentro de un grupo:
.objeto:nth-of-type(2) { display:none; }. - Para cambiar el color de varios elementos del mismo tipo:
nombre.first-of-type { color: green; }. - Para elegir entre dos opciones (ejemplo de lista desplegable):
<input type="text" list="options"> <datalist id="options"> <option value="Opción 1"> <option value="Opción 2"> </datalist> flex-direction: row;alinea los elementos en fila, no en columna. Para alinear en columna, se debe usarflex-direction: column;.- Para justificar un párrafo:
text-align: justify;. foto .casa - video: Este selector selecciona todos los elementosvideoque son hermanos posteriores de un elemento con la clasecasa, donde.casaes un descendiente de un elemento con la clasefoto.- Para establecer una imagen de fondo:
background-image: url("fondo.png");. <article>puede contener elementos hijos de tipo<section>.MPEGno es un formato estándar para elementos<audio>o<video>sin extensiones adicionales (como códecs específicos).- El selector
div.importante > p + imgselecciona todas las imágenes que siguen inmediatamente a un párrafo (p) que es hijo directo de undivcon la claseimportante. <hr>inserta una barra horizontal en la página web.document.querySelector("p:first-of-type").style.display = "none";oculta el primer párrafo de la página.- El envío de datos desde un formulario en un
iframeno será posible si eliframetiene el atributosandbox. img[alt="flores"].exoticselecciona las imágenes que tienen el atributoaltigual a "flores" y pertenecen a la claseexotic.min-width:700px;establece que un elemento no puede reducirse por debajo de los 700px de ancho.#uno {margin:10px;} #dos {margin:20px;}: Si dos elementos con estos IDs están uno encima del otro, la separación *vertical* será de 20px (el margen mayor prevalece).- Etiquetas semánticas para código:
<var>,<code>,<samp>y<kbd>. <form>: Crea un elemento de bloque.<span>: Crea una agrupación en línea.<fieldset>: Agrupa elementos relacionados en un formulario.sizeno es un atributo válido para especificar tamaños en CSS.&(probablemente refiriéndose a entidades HTML), RGB o valores hexadecimales (#) sí son válidos para colores.- Para crear un círculo negro, se puede usar un elemento con
width: 0; height: 0; border-radius: 50%; background-color: black;. Solo conwidth: 0; height: 0;no se mostraría nada. li#item a.clase:hover { ... }: Aplica estilos a un enlace (<a>) con la claseclasedentro de un elemento de lista (<li>) con el IDitem, solo cuando el cursor está sobre el enlace.- Dentro de la cabecera (
<head>) de un documento HTML pueden estar:<title>,<meta>y<script>. - Un elemento
<section>puede tener elementos hijos de tipo<article>y viceversa. - Dos elementos
<span>pueden ubicarse uno al lado del otro (son elementos en línea). - Etiquetas de marcado semántico:
<figure>,<article>,<header>. NO son semánticas:<script>,<foot>(debería ser<footer>),<span>. <wbr>no es una etiqueta semántica. Indica un punto de ruptura de palabra opcional.<th>crea celdas de encabezado en una tabla.<link>es una etiqueta que no tiene etiqueta de cierre.<head>define la parte de metadatos en un HTML.<input type="text">se usa para una entrada de texto (nombre y apellidos, por ejemplo).<section>,<div>y<article>permiten agrupar elementos HTML.<span style="color: blue">palabra</span>cambia el color de "palabra" a azul.file,tel,resetson tipos de<input>. No se usan dentro de<textarea>.- Centrar una imagen: Se puede usar
text-align: center;en el elemento padre, omargin: 0 auto; display: block;en la propia imagen. - Modificar tamaño de texto:
font-size. - Cambiar color de fondo:
background-color. - Cambiar color de bordes:
border-color. - Cambiar tipo de letra:
font-family. - El código JavaScript en una página web se ejecuta en la máquina del usuario (en el navegador).
- Vincular hoja de estilos externa:
<link rel="stylesheet" type="text/css" href="fichero.css">. <title>no se muestra en el contenido de la página web, pero sí en la pestaña del navegador.- Atributos del elemento
<body>(algunos obsoletos): Se puede especificar una imagen de fondo (background- obsoleto), color de texto (text- obsoleto) y color de fondo (bgcolor- obsoleto). Es mejor usar CSS para esto. - Seleccionar elementos
divde clasecontenedor-lateral:div.contenedor-lateral. <input type="submit">: Crea un botón para enviar la información de un formulario a un servidor.- W3C (World Wide Web Consortium) crea estándares para la web.
#parrafopermite seleccionar el elemento cuyoides "parrafo".img[alt*="salvaje"]: Selecciona elementos<img>cuyo atributoalt*contiene* la palabra "salvaje".<!DOCTYPE html>: Indica el tipo de documento (HTML) y la versión (HTML5 en este caso).- No es obligatorio especificar el tamaño de una imagen (
widthyheight), pero es recomendable para optimizar la carga de la página. margin: 2px; border: 3px solid black;: Establece un margen de 2 píxeles y un borde negro sólido de 3 píxeles.style: flexno es una propiedad CSS válida por sí sola. Se usan propiedades comodisplay: flex;,flex-direction,justify-content, etc.
Ejemplos de JavaScript
Agregar elementos al DOM
// Agregar varios párrafos
for (x of posiciones) {
let p = document.createElement("p"); // Crea un nuevo elemento <p>
p.innerHTML = x; // Inserta contenido en el elemento <p>
document.body.appendChild(p); // Agrega el elemento <p> al body
}
// Agregar elementos a una lista
var lista = document.createElement("ol"); // Crea una lista ordenada
for (var i = 0; i < editados.length; i++) {
let libro = document.createElement("li"); // Crea un elemento de lista
libro.innerHTML = editados[i].titulo;
lista.appendChild(libro); // Agrega el elemento de lista a la lista ordenada
}
document.body.appendChild(lista); // Agrega la lista al body
// Crear una lista en una sola cadena
let resultado = ""; // Crea una cadena vacía
resultado = "<ol>"; // Añade a la variable resultados el inicio de una lista
for (let i = 0; i < 31; i++) {
resultado = resultado + "<li>" + i + "</li>"; // Abre y cierra la etiqueta que es una lista
}
resultado = resultado + "</ol>"; // Cierra la lista
console.log(resultado);
// Cambiar extensiones de archivo a .png
function transformaPng(nombre) {
var res = nombre + ".png";
console.log(res);
return res;
}
paisajes.forEach(transformaPng); // Itera sobre un array (asumiendo que 'paisajes' existe)
// Agregar una advertencia
function advertir() {
var advertencia = document.createElement("p");
advertencia.innerHTML = "<b>Cuidado</b>"; // <b> </b> -> Negrita
document.body.appendChild(advertencia);
}
Métodos de selección de elementos del DOM
document.getElementsByTagName(): Busca todos los elementos de un tipo específico (por ejemplo,p,div, etc.).document.getElementById(): Busca un elemento por su ID.document.querySelector(): Devuelve el *primer* elemento que coincide con un selector CSS.document.querySelectorAll(): Devuelve *todos* los elementos que coinciden con un selector CSS.
Manipulación de Arrays en JavaScript
posiciones.push("");: Añade un elemento al final de un array.("").pop();: Elimina el último elemento de un array.("").unshift();: Añade un elemento al principio de un array.("").shift();: Elimina el primer elemento de un array.("").firstChild;: Devuelve el primer nodo hijo de un nodo. Si no hay hijos, devuelvenull.("").childNodes[0];: Accede al primer nodo hijo de un nodo (equivalente afirstChild).
Ejemplo de appendChild
// Añadir un solo elemento
let casas = document.createElement("p");
casas.innerHTML = "¡Hola, soy un nuevo párrafo!";
document.body.appendChild(casas);
// Añadir varios elementos
let vehiculos = document.createElement("div");
vehiculos.innerHTML = "Este es el grupo de vehiculos";
let bici = document.createElement("p");
bici.innerHTML = "Toyota"; // (Debería ser un tipo de vehículo, ej: "Bicicleta")
vehiculos.appendChild(bici);
document.body.appendChild(vehiculos);
Otros Conceptos de JavaScript
- El número 0 es considerado "falsy" (falso) en JavaScript.
isNaN(): Verifica si un valor *no* es un número válido (Not-a-Number).typeof(null)devuelve "object".- Cadenas o variables vacías, al convertirlas a número, se evalúan como 0.
Ejecutar código después de cargar la página
document.addEventListener("DOMContentLoaded", function () {
// Código a ejecutar cuando el DOM esté completamente cargado
actualizar(p1, p2); // (Asumiendo que 'actualizar', 'p1' y 'p2' están definidos)
});
Ejemplo de creación de elemento con createElement
document.createElement("div"); crea un nodo elemento de tipo <div>, pero no lo añade al documento. Para hacerlo visible, se debe usar appendChild() o un método similar.
Ejemplos Adicionales de JavaScript
// Ejemplo de array y función
let b = { idiomas: ["castellano", "valenciano", "inglés"] };
function CambioNombre(nombre) {
var res = nombre + "-GTDM";
console.log(res);
return res;
}
d.forEach(CambioNombre); // (Asumiendo que 'd' es un array)
// Calcular el valor total de libros (asumiendo un array 'editados')
function calcularValorTotal() {
var total = 0;
for (var i = 0; i < editados.length; i++) {
total += editados[i].precio * 100; // Multiplica por 100 (¿para centavos?)
}
return total;
}
var valorTotal = calcularValorTotal();
console.log("El valor total de los libros en stock es: " + valorTotal + " euros.");
// Concatenar propiedades de un objeto
var obj = { num1: "10", num2: "2", num3: "55" };
function Concatenar() {
if (typeof obj.num1 === 'string' && typeof obj.num2 === 'string' && typeof obj.num3 === 'string') {
var res = obj.num1.concat(obj.num2).concat(obj.num3);
return res;
} else {
return "Nada";
}
}
console.log(Concatenar());
//Obtener el numero de propiedades de un objeto
Object.keys(obj).length
Ejemplo de creación de lista con manejador de eventos
<li data-opcion="none" onclick="gestionar(this)">Eliminar anuncio</li>
<li data-opcion="red" onclick="gestionar(this)">Anuncio con texto rojo</li>
Ejemplo de inicialización de array
let m = [];
m[0] = 5;
m[1] = 10;
m[2] = 15;
Ejemplo de función simple
function sumarDos(a, b) {
return a + b; // Devuelve la suma de a y b
}
console.log(sumarDos(2, 4)); // Imprime 6
Ejemplo de modificación del DOM
document.getElementById("demo").innerHTML = 'Epa';
// O
document.querySelector("#demo").innerHTML = 'Epa';
Este código reemplaza el contenido de un elemento con el ID "demo" con el texto 'Epa'.