Páginas:
504
Edición:
2
Fecha de publicación:
27/06/2013
ISBN:
9788426719959
Formato:
19x25 cms
Colección

El gran libro de HTML5, CSS3 y Javascript 2ª Ed.

29,90 28,40
29,90 28,40
Añadir a cesta
Recíbelo en 24/48h

Vivimos una revolución. Internet ha dejado de ser sólo un instrumento de comunicación para convertirse en parte de, prácticamente, todos los aspectos de la vida humana. En este contexto, el lenguaje HTML5 ha adquirido una importancia única. Las aplicaciones de Internet a las que accedemos ahora incontables veces en un día, ya sea desde un ordenador de mesa, un teléfono móvil, una PDA o cualquier otro dispositivo, son posibles gracias a HTML5.

Con este manual aprenderá, a través de ejercicios prácticos soportados por sólidos conocimientos teóricos, a crear toda clase de sitios webs y aplicaciones estructuradas en HTML5, con estilos CS3 y programadas con las más importantes y recientes herramientas de Javascript. Estudiará desde los conceptos más básicos y tradicionales de cada uno de los lenguajes hasta los más utilizados por verdaderos profesionales de la programación. En cada capítulo irá desarrollando diversos códigos que irán ganando complejidad a medida que se avanza en la lección y harán mucho más accesibles los conceptos previamente estudiados.

Mediante el uso de los componentes de los tres lenguajes, las nuevas API que ofrece Javascript y librerías externas, aprenderá a escribir sus propios códigos para crear, programar y optimizar formularios, personalizar la forma en la que se reproduce un archivo de vídeo o de audio, insertar una o más pistas de subtítulos en un vídeo, controlar la entrada y salida de cualquier elemento en el modo de pantalla completa, capturar vídeo en streamig, crear gráficos y animaciones de dos y tres dimensiones, programar un vídeo juego, controlar la apariencia y la forma en la que se comporta el ratón en determinadas circunstancias, utilizar la geolocalización, manipular la historia de navegación del usuario, optimizar el funcionamiento fuera de línea de su sitio, crear aplicaciones de mensajería digital y otras formas de comunicación bidireccional, entre muchos otros conocimientos.

Índice Introducción . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 21 1. Documentos HTML5 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 25 1.1 Componentes básicos . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 25 1.2 Una breve introducción a HTML . . . . . . . . . . . . . . . . . . . . . . . . . . . 25 1.2.1 Etiquetas y elementos . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 26 1.2.2 Atributos . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 27 1.2.3 Elementos anteriores . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 28 1.3 Estructura global . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 28 1.3.1 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 29 1.3.2 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 29 1.3.3 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 30 1.3.4 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 30 1.3.5 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 31 1.3.6 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 32 1.3.7 <link> . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 32 1.4 La estructura del cuerpo del documento . . . . . . . . . . . . . . . . . . . . . 34 1.4.1 Organización . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 34 1.4.2 <header> . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 37 1.4.3 <nav> . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 38 1.4.4 <section> . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 39 1.4.5 <aside> . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 40 1.4.6 <footer> . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 42 1.5 En el interior del cuerpo . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 43 1.5.1 <article> . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 43 1.5.2 <hgroup> . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 47 1.5.3 <figure> y <figcaption> . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 48 1.5.4 <details> y <summary> . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 50 1.6 Elementos nuevos y elementos antiguos . . . . . . . . . . . . . . . . . . . . . 51 1.6.1 <mark> . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 51 1.6.2 <small> . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 51 1.6.3 <cite> . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 52 1.6.4 <address> . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 52 1.6.5 <wbr> . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 52 1.6.6 <time> . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 53 1.6.7 <data> . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 53 1.7 Nuevos atributos y viejos atributos. . . . . . . . . . . . . . . . . . . . . . . . . 54 1.7.1 El atributo data-* 54 1.7.2 reversed 54 1.7.3 ping y download 54 1.7.4 translate . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 55 1.7.5 contenteditable 56 1.7.6 spellcheck . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 56 2. Estilos CSS y modelos de caja . . . . . . . . . . . . . . . . . . . . . . . . 57 2.1 CSS y HTML 57 2.2 Breve introducción a CSS . . . . . . . . . . . . . . . . . . . . . . . . . . . . 57 2.2.1 Reglas CSS 58 2.2.2 Propiedades . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 59 2.2.3 Estilos en línea . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 60 2.2.4 Estilos incrustados . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 61 2.2.5 Archivos externos 61 2.2.6 Referencias 62 2.2.7 Selectores nuevos . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 68 2.3 Aplicar CSS a nuestro documento . . . . . . . . . . . . . . . . . . . . . . 69 2.3.1 Modelos de caja . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 70 2.4 Modelo de caja tradicional . . . . . . . . . . . . . . . . . . . . . . . . . . . 71 2.4.1 Documento HTML . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 71 2.4.2 Selector universal (*) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 73 2.4.3 Títulos . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 74 2.4.4 Declaración de nuevos elementos HTML5 . . . . . . . . . .. . . . . . . . . . . . 74 2.4.5 Centrar el cuerpo 75 2.4.6 Creación de la caja principal 75 2.4.7 La cabecera 76 2.4.8 Barra de navegación . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 77 2.4.9 Área principal y Barra lateral 78 2.4.10 Pie de página . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 79 2.4.11 Toques finales 81 2.4.12 box-sizing 82 2.5 Modelo de caja flexible . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 84 2.5.1 Contenedor flexible 84 2.5.2 Documento HTML . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 84 2.5.3 Display 85 2.5.4 Ejes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 85 2.5.5 Propiedad Flex 86 2.5.6 flex-direction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 91 2.5.7 order 92 2.5.8 justify-content 92 2.5.9 align-items 95 2.5.10 align-self 97 2.5.11 flex-wrap . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 98 2.5.12 align-content 99 3. Propiedades CSS3 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 102 3.1 Las nuevas reglas 102 3.1.1 CSS3 ha enloquecido 102 3.1.2 Documento HTML . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 102 3.1.3 border-radius . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 104 3.1.4 box-shadow 106 3.1.5 text-shadow 108 3.1.6 @font-face . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 109 3.1.7 linear-gradient 110 3.1.8 radial-gradient 112 3.1.9 rgb . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 113 3.1.10 hsla. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 114 3.1.11 outline 114 3.1.12 border-image . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 115 3.1.13 background 116 3.1.14 Columnas 118 3.2 Transformar 120 3.2.1 transform: scale . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 120 3.2.2 transform: rotate 121 3.2.3 transform: skew 122 3.2.4 transform: translate . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 122 3.2.5 Transformar todo en un elemento 123 3.2.6 Transformaciones dinámicas . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 123 3.2.7 Transformaciones 3D . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 124 3.3 Transiciones 127 3.4 Animaciones . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 128 4 Javascript . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 132 4.1 Breve introducción a Javascript . . . . . . . . . . . . . . . . . . . . . . . . . . . 132 4.1.1 El lenguaje 132 4.1.2 Variables 133 4.1.3 Condicionales y bucles . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 137 4.1.4 Objetos 144 4.1.5 Constructores . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 152 4.1.6 El objeto Window 154 4.1.7 El objeto Document . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 155 4.2 Una introducción a los eventos 156 4.2.1 Atributos de eventos . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 156 4.2.2 Propiedades del evento 157 4.2.3 El método addEventListener() 157 4.3 Incorporar Javascript . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 158 4.3.1 En línea 158 4.3.2 Incrustado . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 158 4.3.3 Desde un archivo externo 160 4.4 Nuevos selectores . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 161 4.4.1 querySelector() 161 4.4.2 querySelectorAll() 162 4.4.3 matchesSelector() 164 4.5 Interactuar con el documento . . . . . . . . . . . . . . . . . . . . . . . . . . . . 165 4.5.1 Estilos Javascript . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 165 4.5.2 ClassList . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 166 4.5.3 Acceder a los atributos . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 168 4.5.4 dataset 169 4.5.5 Crear y borrar elementos . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 169 4.5.6 innerHTML, outerHtml e insertAdjacentHTML 170 4.6 Las API . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 172 4.6.1 API nativas . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 173 4.6.2 API externas . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 173 4.7 Errores y depuración 174 4.7.1 Consola . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 174 4.7.2 console.log() . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 175 4.7.3 Evento error 176 5 Formularios . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 177 5.1 Formularios HTML 177 5.1.1 El elemento <form> . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 177 5.1.2. El elemento <input> . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 178 5.1.3 Más elementos de formulario 180 5.1.4 Enviar un formulario . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 181 5.2 Nuevos tipos de entrada . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 181 5.2.1 Tipo email . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 182 5.2.2 Tipo search 182 5.2.3 Tipo url 182 5.2.4 Tipo tel 183 5.2.5 Tipo number 183 5.2.6 Tipo range . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 183 5.2.7 Tipo date . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 183 5.2.8 Tipo week . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 184 5.2.9 Tipo month 184 5.2.10 Tipo time 184 5.2.11 Tipo datetime 184 5.2.12 Tipo datetime-local . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 185 5.2.13 Tipo color 185 5.3 Nuevos atributos 185 5.3.1 Atributo autocomplete 185 5.3.2 Atributos novalidate y formnovalidate 185 5.3.3 Atributo placeholder . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 186 5.3.4 Atributo required . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 186 5.3.5 Atributo multiple . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 187 5.3.6 Atributo autofocus 187 5.3.7 Atributo pattern . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 187 5.3.8 Atributo form . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 187 5.4 Nuevos elementos de los formularios 188 5.4.1 El elemento <datalist> . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 188 5.4.2 El elemento <progress> . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 188 5.4.3 El elemento <meter> . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 189 5.4.4 El elemento <output> 189 5.5 Nueva pseudo-clases . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 189 5.5.1 valid e invalid 189 5.5.2 optional y required . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 190 5.5.3 in-range y out-of-range . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 191 5.6 Formularios API . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 191 5.6.1 SetCustomValidity() . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 192 5.6.2 El evento invalid y el método CheckValidity() 194 5.6.3 Validación en tiempo real con ValidityState . . . . . . . . . . . . . . . . . . . . 196 5.6.4 Restricciones de validez . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 197 6 Vídeo y audio . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 199 6.1 Vídeo con HTML5 199 6.1.1 El elemento <video> . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 200 6.1.2 Atributos del elemento <video> 201 6.1.3 Formatos de vídeo . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 202 6.2 Audio con HTML5 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 203 6.2.1 El elemento <audio> . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 203 6.3 Subtítulos 204 6.3.1 El elemento <track> . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 204 6.4 Programar un reproductor multimedia 208 6.4.1 Diseño de un reproductor de vídeo . . . . . . . . . . . . . . . . . . . . . . . . . . . 208 6.4.2 Aplicación . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 210 6.4.3 Eventos 211 6.4.4 Código Javascript 212 6.4.5 Métodos . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 213 6.4.6 Propiedades . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 213 6.4.7 Código en funcionamiento . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 214 7 API TextTrack . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 218 7.1 API TextTrack 218 7.1.1 Lectura de pistas o tracks . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 219 7.1.2 Lectura de entradas o cues . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 220 7.1.3 Adición de pistas nuevas . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 221 8 API Fullscreen 224 8.1 Basta de ventanas . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 224 8.1.1 Ir a pantalla completa 224 8.1.2 Estilos "Fullscreen" . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 226 9. API Stream . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 228 9.1 Capturar contenidos 228 9.1.1 Acceder a la cámara web . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 228 9.1.2 Objetos MediaStreamTrack . . . . . . . . . . . . . . . . . . . . . . . . . . . . 230 9.1.3 Método stop() . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 231 10 API Canvas 233 10.1 Los gráficos para la Web 233 10.1.1 El elemento <canvas> . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 233 10.1.2 GetContext() . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 233 10.2 Dibujar en el lienzo 234 10.2.1 Dibujar rectángulos . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 234 10.2.2 Color . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 236 10.2.3 Degradados 236 10.2.4 Crear trazados 238 10.2.5 Estilos de línea 244 10.2.6 Texto . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 246 10.2.7 Sombras . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 248 10.2.8 Transformaciones . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 248 10.2.9 Restaurar el estado . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 251 10.2.10 globalCompositeOperation . . . . . . . . . . . . . . . . . . . . . . . . . . 252 10.3 Procesamiento de Imágenes . . . . . . . . . . . . . . . . . . . . . . . . . . . . 253 10.3.1 drawImage() . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 254 10.3.2 Datos de imagen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 256 10.3.3 cross-Origin . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 258 10.3.4 Extracción de los datos 259 10.3.5 Patrones . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 260 10.4 Animaciones sobre lienzo 261 10.4.1 Animaciones elementales . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 261 10.4.2 Animaciones profesionales 262 10.5 Procesar vídeo en el lienzo . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 267 10.5.1 Mostrar vídeo en el lienzo . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 267 10.5.2 Aplicación de la vida real 268 11. WebGL y Three.js 270 11.1 Lienzo en 3D 270 11.2 Three.js 270 11.2.1 Renderer . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 270 11.2.2 scene . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 271 11.2.3 Cámara . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 272 </div> </div> <div class="categorias col-xs-12 col-sm-12 col-md-12 col-lg-12 wow fadeIn"> <div class="literal-categorias">Categorías:</div> <span class="posted_in"> <a href="https://www.marcombo.com/libros-tecnicos-y-cientificos/">Libros Técnicos y Científicos</a>, <a href="https://www.marcombo.com/libros-tecnicos-y-cientificos/informatica/" title="informatica#computación#">Informática</a>, <a href="https://www.marcombo.com/libros-tecnicos-y-cientificos/informatica/diseno-web/">Diseño Web</a>, <a href="https://www.marcombo.com/libros-tecnicos-y-cientificos/informatica/programacion-web/">Programación Web</a> </span> <div class="literal-categorias">Tags:</div> <span class="posted_in"> <a href="https://www.marcombo.com/etiqueta-producto/actionscript/">actionscript</a>, <a href="https://www.marcombo.com/etiqueta-producto/ajax/">ajax</a>, <a href="https://www.marcombo.com/etiqueta-producto/computaci%c3%b3n/">computación</a>, <a href="https://www.marcombo.com/etiqueta-producto/desarrollo-web/">desarrollo web</a>, <a href="https://www.marcombo.com/etiqueta-producto/dreamwaver/">dreamwaver</a>, <a href="https://www.marcombo.com/etiqueta-producto/flash/">flash</a>, <a href="https://www.marcombo.com/etiqueta-producto/flex/">flex</a>, <a href="https://www.marcombo.com/etiqueta-producto/html/">html</a>, <a href="https://www.marcombo.com/etiqueta-producto/informatica-2/">informatica</a>, <a href="https://www.marcombo.com/etiqueta-producto/php/">php</a> </span> </div> <div class="ficha-libro wow fadeIn"> <div class="a-color col-xs-6 col-sm-6 col-md-12 col-lg-12">A color</div> <div class="dato-libro col-xs-6 col-sm-6 col-md-12 col-lg-12"> <div class="literal-libro">Páginas:</div> <div class="txt-libro">504</div> </div> <div class="dato-libro col-xs-6 col-sm-6 col-md-12 col-lg-12"> <div class="literal-libro">Edición:</div> <div class="txt-libro">2</div> </div> <div class="dato-libro col-xs-6 col-sm-6 col-md-12 col-lg-12"> <div class="literal-libro">Año Publicación:</div> <div class="txt-libro">27/06/2013</div> </div> <div class="dato-libro col-xs-6 col-sm-6 col-md-12 col-lg-12"> <div class="literal-libro">ISBN:</div> <div class="txt-libro">9788426719959</div> </div> <div class="dato-libro col-xs-6 col-sm-6 col-md-12 col-lg-12"> <div class="grupo-ficha-libro"> <div class="literal-libro">Formato:</div> <div class="txt-libro">19x25 cms</div> </div> </div> </div> <div class="ficha-coleccion wow fadeIn"> <div class="literal-coleccion col-xs-6 col-sm-6 col-md-12 col-lg-12">Colección</div> <div class="img-coleccion col-xs-8 col-sm-8 col-md-12 col-lg-12"> </div> </div> </article> </div> </div> </div> </section> </div> </div> </div> <section class="marcombo-relacionados container-fluid"> <div class="row"> <header class="section-header col-xs-12 col-sm-12 col-md-12 col-lg-12"> <h2 class="section-title">Relacionados</h2> </header> </div> <div class="row"> <div class="row-flex row-flex-wrap"> <div class="col-xs-12 col-sm-12 col-md-12 col-lg-12"> <div class="owl-carousel-responsive owl-theme"><div class="item"> <article class="article"> <div class="ih-item square effect6 from_top_and_bottom"> <a href="https://www.marcombo.com/aprender-flash-pro-cc-con-100-ejercicios-practicos-9788426721075/" title="Aprender Flash Pro CC con 100 ejercicios prácticos"alt="Aprender Flash Pro CC con 100 ejercicios prácticos"> <div class="img portada-libro"> <figure class="thumb photo"> <img src="https://www.marcombo.com/wp-content/uploads/2017/10/9788426721075-300x368.jpg" class="img-responsive" alt="Aprender Flash Pro CC con 100 ejercicios prácticos"/> </figure> </div> <div class="info"> <div class="pastilla-libro"> <h2 class="titulo">Aprender Flash Pro CC con 100 ejercicios prácticos</h2> <!-- <div class="autores"> <div class="literal-libro">Autores:</div> <div class="autores-libro"> </div> </div> --> <div class="ver-ficha-libro">ver ficha</div> </div> </div> </a> </div> <div class="cesta-libro"> <div class="precio"> <del><span class="woocommerce-Price-amount amount">21,40<span class="woocommerce-Price-currencySymbol">€</span></span></del> <ins><span class="woocommerce-Price-amount amount">20,33<span class="woocommerce-Price-currencySymbol">€</span></span></ins> </div> <div class="precio-sin-oferta"> <del><span class="woocommerce-Price-amount amount">21,40<span class="woocommerce-Price-currencySymbol">€</span></span></del> <ins><span class="woocommerce-Price-amount amount">20,33<span class="woocommerce-Price-currencySymbol">€</span></span></ins> </div> </div> <div class="comprar-libro col-xs-12"> <a rel="nofollow" href="/el-gran-libro-de-html5-css3-y-javascript-2a-ed-9788426719959/?add-to-cart=1451" data-quantity="1" data-product_id="1451" data-product_sku="9788426721075" class="button col-xs-12"><i class="fas fa-shopping-basket" style="font-size:1.0em; color: #ffffff; margin-right: 5px; "></i>Añadir a cesta</a> </div> </article> </div> <div class="item"> <article class="article"> <div class="ih-item square effect6 from_top_and_bottom"> <a href="https://www.marcombo.com/el-gran-libro-de-html5-css3-y-javascript-3a-edicion-9788426724632/" title="El gran libro de HTML5, CSS3 y JavaScript 3ª Edición"alt="El gran libro de HTML5, CSS3 y JavaScript 3ª Edición"> <div class="img portada-libro"> <figure class="thumb photo"> <img src="https://www.marcombo.com/wp-content/uploads/2017/10/9788426724632-1-300x428.jpg" class="img-responsive" alt="El gran libro de HTML5, CSS3 y JavaScript 3ª Edición"/> </figure> </div> <div class="info"> <div class="pastilla-libro"> <h2 class="titulo">El gran libro de HTML5, CSS3 y JavaScript 3ª Edición</h2> <!-- <div class="autores"> <div class="literal-libro">Autores:</div> <div class="autores-libro"> </div> </div> --> <div class="ver-ficha-libro">ver ficha</div> </div> </div> </a> </div> <div class="cesta-libro"> <div class="precio"> <del><span class="woocommerce-Price-amount amount">31,40<span class="woocommerce-Price-currencySymbol">€</span></span></del> <ins><span class="woocommerce-Price-amount amount">29,83<span class="woocommerce-Price-currencySymbol">€</span></span></ins> </div> <div class="precio-sin-oferta"> <del><span class="woocommerce-Price-amount amount">31,40<span class="woocommerce-Price-currencySymbol">€</span></span></del> <ins><span class="woocommerce-Price-amount amount">29,83<span class="woocommerce-Price-currencySymbol">€</span></span></ins> </div> </div> <div class="comprar-libro col-xs-12"> <a rel="nofollow" href="/el-gran-libro-de-html5-css3-y-javascript-2a-ed-9788426719959/?add-to-cart=1919" data-quantity="1" data-product_id="1919" data-product_sku="9788426724632" class="button col-xs-12"><i class="fas fa-shopping-basket" style="font-size:1.0em; color: #ffffff; margin-right: 5px; "></i>Añadir a cesta</a> </div> </article> </div> <div class="item"> <article class="article"> <div class="ih-item square effect6 from_top_and_bottom"> <a href="https://www.marcombo.com/programe-juegos-con-html5-9788426722614/" title="Programe juegos con HTML5"alt="Programe juegos con HTML5"> <div class="img portada-libro"> <figure class="thumb photo"> <img src="https://www.marcombo.com/wp-content/uploads/2018/02/9788426722614-300x447.jpg" class="img-responsive" alt="Programe juegos con HTML5"/> </figure> </div> <div class="info"> <div class="pastilla-libro"> <h2 class="titulo">Programe juegos con HTML5</h2> <!-- <div class="autores"> <div class="literal-libro">Autores:</div> <div class="autores-libro"> </div> </div> --> <div class="ver-ficha-libro">ver ficha</div> </div> </div> </a> </div> <div class="cesta-libro"> <div class="precio"> <del><span class="woocommerce-Price-amount amount">14,60<span class="woocommerce-Price-currencySymbol">€</span></span></del> <ins><span class="woocommerce-Price-amount amount">13,87<span class="woocommerce-Price-currencySymbol">€</span></span></ins> </div> <div class="precio-sin-oferta"> <del><span class="woocommerce-Price-amount amount">14,60<span class="woocommerce-Price-currencySymbol">€</span></span></del> <ins><span class="woocommerce-Price-amount amount">13,87<span class="woocommerce-Price-currencySymbol">€</span></span></ins> </div> </div> <div class="comprar-libro col-xs-12"> <a rel="nofollow" href="/el-gran-libro-de-html5-css3-y-javascript-2a-ed-9788426719959/?add-to-cart=2944" data-quantity="1" data-product_id="2944" data-product_sku="9788426722614" class="button col-xs-12"><i class="fas fa-shopping-basket" style="font-size:1.0em; color: #ffffff; margin-right: 5px; "></i>Añadir a cesta</a> </div> </article> </div> <div class="item"> <article class="article"> <div class="ih-item square effect6 from_top_and_bottom"> <a href="https://www.marcombo.com/programacion-orientada-a-objetos-con-visual-c-2015-y-adonet-46-9788426725493/" title="Programación orientada a objetos con Visual C# 2015 y ADO.NET 4.6"alt="Programación orientada a objetos con Visual C# 2015 y ADO.NET 4.6"> <div class="img portada-libro"> <figure class="thumb photo"> <img src="https://www.marcombo.com/wp-content/uploads/2018/02/9788426725493-300x421.jpg" class="img-responsive" alt="Programación orientada a objetos con Visual C# 2015 y ADO.NET 4.6"/> </figure> </div> <div class="info"> <div class="pastilla-libro"> <h2 class="titulo">Programación orientada a objetos con Visual C# 2015 y ADO.NET 4.6</h2> <!-- <div class="autores"> <div class="literal-libro">Autores:</div> <div class="autores-libro"> </div> </div> --> <div class="ver-ficha-libro">ver ficha</div> </div> </div> </a> </div> <div class="cesta-libro"> <div class="precio"> <del><span class="woocommerce-Price-amount amount">23,80<span class="woocommerce-Price-currencySymbol">€</span></span></del> <ins><span class="woocommerce-Price-amount amount">22,61<span class="woocommerce-Price-currencySymbol">€</span></span></ins> </div> <div class="precio-sin-oferta"> <del><span class="woocommerce-Price-amount amount">23,80<span class="woocommerce-Price-currencySymbol">€</span></span></del> <ins><span class="woocommerce-Price-amount amount">22,61<span class="woocommerce-Price-currencySymbol">€</span></span></ins> </div> </div> <div class="comprar-libro col-xs-12"> <a rel="nofollow" href="/el-gran-libro-de-html5-css3-y-javascript-2a-ed-9788426719959/?add-to-cart=2837" data-quantity="1" data-product_id="2837" data-product_sku="9788426725493" class="button col-xs-12"><i class="fas fa-shopping-basket" style="font-size:1.0em; color: #ffffff; margin-right: 5px; "></i>Añadir a cesta</a> </div> </article> </div> <div class="item"> <article class="article"> <div class="ih-item square effect6 from_top_and_bottom"> <a href="https://www.marcombo.com/diseno-de-sitios-web-administrables-con-joomla-3-9788426723130/" title="Diseño de sitios web administrables con Joomla 3"alt="Diseño de sitios web administrables con Joomla 3"> <div class="img portada-libro"> <figure class="thumb photo"> <img src="https://www.marcombo.com/wp-content/uploads/2017/10/9788426723130-300x415.jpg" class="img-responsive" alt="Diseño de sitios web administrables con Joomla 3"/> </figure> </div> <div class="info"> <div class="pastilla-libro"> <h2 class="titulo">Diseño de sitios web administrables con Joomla 3</h2> <!-- <div class="autores"> <div class="literal-libro">Autores:</div> <div class="autores-libro"> </div> </div> --> <div class="ver-ficha-libro">ver ficha</div> </div> </div> </a> </div> <div class="cesta-libro"> <div class="precio"> <del><span class="woocommerce-Price-amount amount">17,60<span class="woocommerce-Price-currencySymbol">€</span></span></del> <ins><span class="woocommerce-Price-amount amount">16,71<span class="woocommerce-Price-currencySymbol">€</span></span></ins> </div> <div class="precio-sin-oferta"> <del><span class="woocommerce-Price-amount amount">17,60<span class="woocommerce-Price-currencySymbol">€</span></span></del> <ins><span class="woocommerce-Price-amount amount">16,71<span class="woocommerce-Price-currencySymbol">€</span></span></ins> </div> </div> <div class="comprar-libro col-xs-12"> <a rel="nofollow" href="/el-gran-libro-de-html5-css3-y-javascript-2a-ed-9788426719959/?add-to-cart=1711" data-quantity="1" data-product_id="1711" data-product_sku="9788426723130" class="button col-xs-12"><i class="fas fa-shopping-basket" style="font-size:1.0em; color: #ffffff; margin-right: 5px; "></i>Añadir a cesta</a> </div> </article> </div> <div class="item"> <article class="article"> <div class="ih-item square effect6 from_top_and_bottom"> <a href="https://www.marcombo.com/aprender-maya-2014-con-100-ejercicios-practicos-9788426720832/" title="APRENDER MAYA 2014 CON 100 EJERCICIOS PRÁCTICOS"alt="APRENDER MAYA 2014 CON 100 EJERCICIOS PRÁCTICOS"> <div class="img portada-libro"> <figure class="thumb photo"> <img src="https://www.marcombo.com/wp-content/uploads/2017/10/9788426720832-300x369.jpg" class="img-responsive" alt="APRENDER MAYA 2014 CON 100 EJERCICIOS PRÁCTICOS"/> </figure> </div> <div class="info"> <div class="pastilla-libro"> <h2 class="titulo">APRENDER MAYA 2014 CON 100 EJERCICIOS PRÁCTICOS</h2> <!-- <div class="autores"> <div class="literal-libro">Autores:</div> <div class="autores-libro"> </div> </div> --> <div class="ver-ficha-libro">ver ficha</div> </div> </div> </a> </div> <div class="cesta-libro"> <div class="precio"> <del><span class="woocommerce-Price-amount amount">21,40<span class="woocommerce-Price-currencySymbol">€</span></span></del> <ins><span class="woocommerce-Price-amount amount">20,33<span class="woocommerce-Price-currencySymbol">€</span></span></ins> </div> <div class="precio-sin-oferta"> <del><span class="woocommerce-Price-amount amount">21,40<span class="woocommerce-Price-currencySymbol">€</span></span></del> <ins><span class="woocommerce-Price-amount amount">20,33<span class="woocommerce-Price-currencySymbol">€</span></span></ins> </div> </div> <div class="comprar-libro col-xs-12"> <a rel="nofollow" href="/el-gran-libro-de-html5-css3-y-javascript-2a-ed-9788426719959/?add-to-cart=1406" data-quantity="1" data-product_id="1406" data-product_sku="9788426720832" class="button col-xs-12"><i class="fas fa-shopping-basket" style="font-size:1.0em; color: #ffffff; margin-right: 5px; "></i>Añadir a cesta</a> </div> </article> </div> <div class="item"> <article class="article"> <div class="ih-item square effect6 from_top_and_bottom"> <a href="https://www.marcombo.com/html-y-css-facil-9788426721853/" title="HTML y CSS fácil"alt="HTML y CSS fácil"> <div class="img portada-libro"> <figure class="thumb photo"> <img src="https://www.marcombo.com/wp-content/uploads/2017/10/9788426721853-300x422.jpg" class="img-responsive" alt="HTML y CSS fácil"/> </figure> </div> <div class="info"> <div class="pastilla-libro"> <h2 class="titulo">HTML y CSS fácil</h2> <!-- <div class="autores"> <div class="literal-libro">Autores:</div> <div class="autores-libro"> </div> </div> --> <div class="ver-ficha-libro">ver ficha</div> </div> </div> </a> </div> <div class="cesta-libro"> <div class="precio"> <del><span class="woocommerce-Price-amount amount">17,90<span class="woocommerce-Price-currencySymbol">€</span></span></del> <ins><span class="woocommerce-Price-amount amount">17,00<span class="woocommerce-Price-currencySymbol">€</span></span></ins> </div> <div class="precio-sin-oferta"> <del><span class="woocommerce-Price-amount amount">17,90<span class="woocommerce-Price-currencySymbol">€</span></span></del> <ins><span class="woocommerce-Price-amount amount">17,00<span class="woocommerce-Price-currencySymbol">€</span></span></ins> </div> </div> <div class="comprar-libro col-xs-12"> <a rel="nofollow" href="/el-gran-libro-de-html5-css3-y-javascript-2a-ed-9788426719959/?add-to-cart=1537" data-quantity="1" data-product_id="1537" data-product_sku="9788426721853" class="button col-xs-12"><i class="fas fa-shopping-basket" style="font-size:1.0em; color: #ffffff; margin-right: 5px; "></i>Añadir a cesta</a> </div> </article> </div> <div class="item"> <article class="article"> <div class="ih-item square effect6 from_top_and_bottom"> <a href="https://www.marcombo.com/uml-modelado-de-software-para-profesionales-9788426717955/" title="UML Modelado de Software para Profesionales"alt="UML Modelado de Software para Profesionales"> <div class="img portada-libro"> <figure class="thumb photo"> <img src="https://www.marcombo.com/wp-content/uploads/2017/10/9788426717955-300x406.jpg" class="img-responsive" alt="UML Modelado de Software para Profesionales"/> </figure> </div> <div class="info"> <div class="pastilla-libro"> <h2 class="titulo">UML Modelado de Software para Profesionales</h2> <!-- <div class="autores"> <div class="literal-libro">Autores:</div> <div class="autores-libro"> </div> </div> --> <div class="ver-ficha-libro">ver ficha</div> </div> </div> </a> </div> <div class="cesta-libro"> <div class="precio"> <del><span class="woocommerce-Price-amount amount">15,20<span class="woocommerce-Price-currencySymbol">€</span></span></del> <ins><span class="woocommerce-Price-amount amount">14,45<span class="woocommerce-Price-currencySymbol">€</span></span></ins> </div> <div class="precio-sin-oferta"> <del><span class="woocommerce-Price-amount amount">15,20<span class="woocommerce-Price-currencySymbol">€</span></span></del> <ins><span class="woocommerce-Price-amount amount">14,45<span class="woocommerce-Price-currencySymbol">€</span></span></ins> </div> </div> <div class="comprar-libro col-xs-12"> <a rel="nofollow" href="/el-gran-libro-de-html5-css3-y-javascript-2a-ed-9788426719959/?add-to-cart=1181" data-quantity="1" data-product_id="1181" data-product_sku="9788426717955" class="button col-xs-12"><i class="fas fa-shopping-basket" style="font-size:1.0em; color: #ffffff; margin-right: 5px; "></i>Añadir a cesta</a> </div> </article> </div> <div class="item"> <article class="article"> <div class="ih-item square effect6 from_top_and_bottom"> <a href="https://www.marcombo.com/aprender-dreamweaver-cc-con-100-ejercicios-9788426720924/" title="Aprender Dreamweaver CC con 100 ejercicios"alt="Aprender Dreamweaver CC con 100 ejercicios"> <div class="img portada-libro"> <figure class="thumb photo"> <img src="https://www.marcombo.com/wp-content/uploads/2017/10/9788426720924-300x368.jpg" class="img-responsive" alt="Aprender Dreamweaver CC con 100 ejercicios"/> </figure> </div> <div class="info"> <div class="pastilla-libro"> <h2 class="titulo">Aprender Dreamweaver CC con 100 ejercicios</h2> <!-- <div class="autores"> <div class="literal-libro">Autores:</div> <div class="autores-libro"> </div> </div> --> <div class="ver-ficha-libro">ver ficha</div> </div> </div> </a> </div> <div class="cesta-libro"> <div class="precio"> <del><span class="woocommerce-Price-amount amount">21,40<span class="woocommerce-Price-currencySymbol">€</span></span></del> <ins><span class="woocommerce-Price-amount amount">20,33<span class="woocommerce-Price-currencySymbol">€</span></span></ins> </div> <div class="precio-sin-oferta"> <del><span class="woocommerce-Price-amount amount">21,40<span class="woocommerce-Price-currencySymbol">€</span></span></del> <ins><span class="woocommerce-Price-amount amount">20,33<span class="woocommerce-Price-currencySymbol">€</span></span></ins> </div> </div> <div class="comprar-libro col-xs-12"> <a rel="nofollow" href="/el-gran-libro-de-html5-css3-y-javascript-2a-ed-9788426719959/?add-to-cart=1424" data-quantity="1" data-product_id="1424" data-product_sku="9788426720924" class="button col-xs-12"><i class="fas fa-shopping-basket" style="font-size:1.0em; color: #ffffff; margin-right: 5px; "></i>Añadir a cesta</a> </div> </article> </div> <div class="item"> <article class="article"> <div class="ih-item square effect6 from_top_and_bottom"> <a href="https://www.marcombo.com/desarrollo-de-aplicaciones-web-con-php-y-mysql-9788426723260/" title="Desarrollo de aplicaciones web con PHP y MySQL"alt="Desarrollo de aplicaciones web con PHP y MySQL"> <div class="img portada-libro"> <figure class="thumb photo"> <img src="https://www.marcombo.com/wp-content/uploads/2017/10/9788426723260-300x408.jpg" class="img-responsive" alt="Desarrollo de aplicaciones web con PHP y MySQL"/> </figure> </div> <div class="info"> <div class="pastilla-libro"> <h2 class="titulo">Desarrollo de aplicaciones web con PHP y MySQL</h2> <!-- <div class="autores"> <div class="literal-libro">Autores:</div> <div class="autores-libro"> </div> </div> --> <div class="ver-ficha-libro">ver ficha</div> </div> </div> </a> </div> <div class="cesta-libro"> <div class="precio"> <del><span class="woocommerce-Price-amount amount">19,95<span class="woocommerce-Price-currencySymbol">€</span></span></del> <ins><span class="woocommerce-Price-amount amount">18,95<span class="woocommerce-Price-currencySymbol">€</span></span></ins> </div> <div class="precio-sin-oferta"> <del><span class="woocommerce-Price-amount amount">19,95<span class="woocommerce-Price-currencySymbol">€</span></span></del> <ins><span class="woocommerce-Price-amount amount">18,95<span class="woocommerce-Price-currencySymbol">€</span></span></ins> </div> </div> <div class="comprar-libro col-xs-12"> <a rel="nofollow" href="/el-gran-libro-de-html5-css3-y-javascript-2a-ed-9788426719959/?add-to-cart=1735" data-quantity="1" data-product_id="1735" data-product_sku="9788426723260" class="button col-xs-12"><i class="fas fa-shopping-basket" style="font-size:1.0em; color: #ffffff; margin-right: 5px; "></i>Añadir a cesta</a> </div> </article> </div> <div class="item"> <article class="article"> <div class="ih-item square effect6 from_top_and_bottom"> <a href="https://www.marcombo.com/hacking-cracking-redes-inalambricas-9788426723413/" title="Hacking & Cracking: Redes inalámbricas"alt="Hacking & Cracking: Redes inalámbricas"> <div class="img portada-libro"> <figure class="thumb photo"> <img src="https://www.marcombo.com/wp-content/uploads/2017/10/9788426723413-300x426.jpg" class="img-responsive" alt="Hacking & Cracking: Redes inalámbricas"/> </figure> </div> <div class="info"> <div class="pastilla-libro"> <h2 class="titulo">Hacking & Cracking: Redes inalámbricas</h2> <!-- <div class="autores"> <div class="literal-libro">Autores:</div> <div class="autores-libro"> </div> </div> --> <div class="ver-ficha-libro">ver ficha</div> </div> </div> </a> </div> <div class="cesta-libro"> <div class="precio"> <del><span class="woocommerce-Price-amount amount">19,40<span class="woocommerce-Price-currencySymbol">€</span></span></del> <ins><span class="woocommerce-Price-amount amount">18,43<span class="woocommerce-Price-currencySymbol">€</span></span></ins> </div> <div class="precio-sin-oferta"> <del><span class="woocommerce-Price-amount amount">19,40<span class="woocommerce-Price-currencySymbol">€</span></span></del> <ins><span class="woocommerce-Price-amount amount">18,43<span class="woocommerce-Price-currencySymbol">€</span></span></ins> </div> </div> <div class="comprar-libro col-xs-12"> <a rel="nofollow" href="/el-gran-libro-de-html5-css3-y-javascript-2a-ed-9788426719959/?add-to-cart=1747" data-quantity="1" data-product_id="1747" data-product_sku="9788426723413" class="button col-xs-12"><i class="fas fa-shopping-basket" style="font-size:1.0em; color: #ffffff; margin-right: 5px; "></i>Añadir a cesta</a> </div> </article> </div> <div class="item"> <article class="article"> <div class="ih-item square effect6 from_top_and_bottom"> <a href="https://www.marcombo.com/lenguaje-ensamblador-9788426724663/" title="Lenguaje ensamblador"alt="Lenguaje ensamblador"> <div class="img portada-libro"> <figure class="thumb photo"> <img src="https://www.marcombo.com/wp-content/uploads/2017/10/9788426724663.jpg" class="img-responsive" alt="Lenguaje ensamblador"/> </figure> </div> <div class="info"> <div class="pastilla-libro"> <h2 class="titulo">Lenguaje ensamblador</h2> <!-- <div class="autores"> <div class="literal-libro">Autores:</div> <div class="autores-libro"> </div> </div> --> <div class="ver-ficha-libro">ver ficha</div> </div> </div> </a> </div> <div class="cesta-libro"> <div class="precio"> <del><span class="woocommerce-Price-amount amount">14,90<span class="woocommerce-Price-currencySymbol">€</span></span></del> <ins><span class="woocommerce-Price-amount amount">14,15<span class="woocommerce-Price-currencySymbol">€</span></span></ins> </div> <div class="precio-sin-oferta"> <del><span class="woocommerce-Price-amount amount">14,90<span class="woocommerce-Price-currencySymbol">€</span></span></del> <ins><span class="woocommerce-Price-amount amount">14,15<span class="woocommerce-Price-currencySymbol">€</span></span></ins> </div> </div> <div class="comprar-libro col-xs-12"> <a rel="nofollow" href="/el-gran-libro-de-html5-css3-y-javascript-2a-ed-9788426719959/?add-to-cart=1925" data-quantity="1" data-product_id="1925" data-product_sku="9788426724663" class="button col-xs-12"><i class="fas fa-shopping-basket" style="font-size:1.0em; color: #ffffff; margin-right: 5px; "></i>Añadir a cesta</a> </div> </article> </div> </div> </div> </div> </div> </section> <section class="marcombo-newsletter container-fluid wow zoomIn"> <div class="row container-fluid"> <header class="section-header col-xs-12 col-sm-12 col-md-12 col-lg-12"> <h2 data-wow-iteration="0.25" class="section-title">¿Quiéres conocer las últimas novedades?</h2> <h3 class="section-subtitle">Inscribiéndote recibirás unos regalos exclusivos para ti</h3> </header> </div> <div class="row container-fluid"> <div class="row-flex row-flex-wrap"> <div class="col-xs-12 col-sm-6 col-md-12 col-lg-12"></div> <form id="formNews" role="newsletter" action="#" method="post"> <div class="form-group"> <div class="marcombo-email"> <!--<input type="text" name="txtEmail" placeholder="tu email" class="tu-email form-control"> <input type="text" name="txtNombre" placeholder="tu nombre" class="tu-email form-control"> --> <a target="_blank" href="http://www.marcombo.info/newsletter" id="registrate" class="form-control"><center>inscribirse</center></a> <!-- <h3 class="section-subtitle">* El nombre es necesario para poder comunicarnos personalmente contigo.</h3> --> </div> <!--<div class="check-condiciones"> <input type="checkbox" name="checkboxname" text="asdf" class="form-control"> <div class="aceptar-condiciones">Acepto la política de privacidad</div> </div>--> </div> </form> <script> $(document).ready(function () { $('#formNews').validate({ // initialize the plugin rules: { txtEmail: { required: true, email: true }, txtNombre: { required: true, minlength: 3 }, checkboxname: { required: true } }, messages :{ txtEmail : { required : 'Es imprescindible que nos digas tu email', email: 'Por favor introduce un email válido' }, txtNombre: { required: 'Es imprescindible que nos digas tu nombre', minlength: 'El nombre debe ser de al menos 3 carácteres' }, checkboxname: { required: 'Debes aceptar la política de privacidad' } } }); }); </script> <div class="col-xs-12 col-sm-12 col-md-12 col-lg-12 newsletter-rrss"> <!-- <div class="rrss">Síguenos en</div> --> <div class="rrss rrss-logos"> Síguenos en <figure class="thumb photo"><a href="https://www.facebook.com/EdicionesMarcombo/" target="_blank" title="title text" alt="Tittle alt"><img src="https://www.marcombo.com/wp-content/themes/THEME%20_PDP/images/facebook.png" alt="Image facebook.png" class="img-responsive"></a></figure> <figure class="thumb photo"><a href="https://twitter.com/Marcombo1" target="_blank" title="title text" alt="Tittle alt"><img src="https://www.marcombo.com/wp-content/themes/THEME%20_PDP/images/twitter.png" alt="Image twitter.png" class="img-responsive"></a></figure> <figure class="thumb photo"><a href="https://www.instagram.com/edicionesmarcombo/" target="_blank" title="title text" alt="Tittle alt"><img src="https://www.marcombo.com/wp-content/themes/THEME%20_PDP/images/instagram.png" alt="Image instagram.png" class="img-responsive"></a></figure> <figure class="thumb photo"><a href="https://www.youtube.com/user/MarcomboEditorial" target="_blank" title="title text" alt="Tittle alt"><img src="https://www.marcombo.com/wp-content/themes/THEME%20_PDP/images/youtube.png" alt="Image youtube.png" class="img-responsive"></a></figure> </div> </div> </div> </div> </section> </main> </div> <!-- <footer> <div class="site-footer"> <div class="row sub-footer container-fluid"> <div class="col-xs-12 col-md-12 pull-right"> <div class="row"> <div class="col-xs-12 col-md-6 contacto-footer pull-right"> +34 93 824 03 69<br> info@eljou.com </div> <div class="col-xs-12 col-md-6 rrss-footer pull-left"> <div class="rrss-logos col-xs-12 col-md-4"> <figure class="thumb photo col-xs-6 facebook"><a href="#" title="title text" alt="Tittle alt"><img src="https://www.marcombo.com/wp-content/themes/THEME%20_PDP/images/facebook.png" alt="Image alt" class="img-responsive"></a></figure> <figure class="thumb photo col-xs-6 instagram"><a href="#" title="title text" alt="Tittle alt"><img src="https://www.marcombo.com/wp-content/themes/THEME%20_PDP/images/instagram.png" alt="Image alt" class="img-responsive"></a></figure> </div> <div class="rrss-texto col-xs-12 col-md-8">Segueix-nos a les xarxes per estar al dia de les nostres aventures</div> </div> </div> </div> </div> </div> </footer> --> <footer> <div class="site-footer"> <div class="row sub-footer container-fluid"> <div class="col-xs-12 col-sm-12 col-md-12 col-lg-12"> <div class="row"> <div class="col-xs-12 col-sm-3 col-md-3 col-lg-3"> <div class="marcombo-logo-footer"> <figure class="thumb photo"><a href="#" title="title text" alt="Tittle alt"><img src="https://www.marcombo.com/wp-content/themes/THEME%20_PDP/images/marcombo-logo-footer.png" alt="Image marcombo-logo-footer.png" class="img-responsive"></a></figure> </div> </div> <!--.col-xs-12.col-sm-3.col-md-4.col-lg-4 //.footer-literal //|Visita nuestra tienda: //.footer-texto //|Gran Vía de les Corts Catalanes, 594<br /> //|08007- Barcelona //.footer-literal //|Horario: //.footer-texto //|Lunes - Jueves / 9:00 - 18:00h<br /> //|Viernes / 9:00 - 14:00h //.footer-contacto //|(+34) 933 180 079<br /> //|info@marcombo.com --> <div class="col-xs-6 col-sm-3 col-md-3 col-lg-3"> <div class="footer-nav"><ul id="menu-menuusuario" class="menu"><li id="menu-item-17" class="menu-item menu-item-type-post_type menu-item-object-page menu-item-17"><a href="https://www.marcombo.com/mi-cuenta/">Mi cuenta</a></li> <li id="menu-item-18" class="menu-item menu-item-type-post_type menu-item-object-page menu-item-18"><a href="https://www.marcombo.com/carrito/">Carrito</a></li> </ul></div> </div> <div class="col-xs-6 col-sm-3 col-md-3 col-lg-3"> <div class="footer-nav"><ul id="menu-menufooter2" class="menu"><li id="menu-item-2462" class="menu-item menu-item-type-post_type menu-item-object-page menu-item-2462"><a href="https://www.marcombo.com/proximamente/">Profesores</a></li> <li id="menu-item-2444" class="menu-item menu-item-type-custom menu-item-object-custom menu-item-2444"><a href="/quieres-ser-autor/">Autores</a></li> <li id="menu-item-2450" class="menu-item menu-item-type-post_type menu-item-object-page menu-item-2450"><a href="https://www.marcombo.com/preguntas-frecuentes/">Preguntas frecuentes</a></li> <li id="menu-item-2205" class="menu-item menu-item-type-post_type menu-item-object-page menu-item-2205"><a href="https://www.marcombo.com/condiciones-de-compra/">Condiciones de compra</a></li> </ul></div> </div> <div class="col-xs-12 col-sm-3 col-md-2 col-lg-2"> <div class="footer-terminos"><ul id="menu-menufooter3" class="menu"><li id="menu-item-2107" class="menu-item menu-item-type-post_type menu-item-object-page menu-item-2107"><a href="https://www.marcombo.com/aviso-legal/">Aviso legal</a></li> <li id="menu-item-2123" class="menu-item menu-item-type-post_type menu-item-object-page menu-item-2123"><a href="https://www.marcombo.com/politica-de-privacidad-y-condiciones-de-uso/">Política de Privacidad y condiciones de uso</a></li> <li id="menu-item-2134" class="menu-item menu-item-type-post_type menu-item-object-page menu-item-2134"><a href="https://www.marcombo.com/politica-de-cookies/">Política de cookies</a></li> </ul></div> </div> </div> </div> <div class="col-xs-12 col-sm-12 col-md-12 col-lg-12"> <div class="row marcombo-copywrite"> <div class="col-xs-12 col-sm-6 col-md-6 col-lg-6 pull-left"> <div class="copywrite">Copyright © 2017 Marcombo S.A. All rights reserved.</div> </div> <div class="col-xs-12 col-sm-6 col-md-6 col-lg-6 pull-right"> <div class="simtec">Diseño, maquetación y desarrollo<a href="#" title="title text" alt="Tittle alt"><img src="https://www.marcombo.com/wp-content/themes/THEME%20_PDP/images/simtec-logo.png" alt="Image simtec-logo.png" class="img-responsive"></a></div> </div> </div> </div> </div> </div> </footer> <!-- <nav class="social-navigation" role="navigation" aria-label=""> --> <!-- </nav> --> <!-- Page styles --> <!-- Load JavaScript files --> <script> jQuery(document).ready(function($){ $('.quantity').on('click', '.plus', function(e) { $input = $(this).prev('input.qty'); var val = parseInt($input.val()); var step = $input.attr('step'); step = 'undefined' !== typeof(step) ? parseInt(step) : 1; $input.val( val + step ).change(); }); $('.quantity').on('click', '.minus', function(e) { $input = $(this).next('input.qty'); var val = parseInt($input.val()); var step = $input.attr('step'); step = 'undefined' !== typeof(step) ? parseInt(step) : 1; if (val > 0) { $input.val( val - step ).change(); } }); }); </script> <div class='asp_hidden_data' id="asp_hidden_data" style="display: none !important;"> <svg style="position:absolute" height="0" width="0"> <filter id="aspblur"> <feGaussianBlur in="SourceGraphic" stdDeviation="4"/> </filter> </svg> <svg style="position:absolute" height="0" width="0"> <filter id="no_aspblur"></filter> </svg> </div> <!-- Facebook Pixel Code --> <noscript> <img height="1" width="1" style="display:none" alt="fbpx" src="https://www.facebook.com/tr?id=617460871759779&ev=PageView&noscript=1"/> </noscript> <!-- DO NOT MODIFY --> <!-- End Facebook Pixel Code --> <script type="application/ld+json">{"@context":"https:\/\/schema.org\/","@type":"BreadcrumbList","itemListElement":[{"@type":"ListItem","position":1,"item":{"name":"Inicio","@id":"https:\/\/www.marcombo.com"}},{"@type":"ListItem","position":2,"item":{"name":"Libros T\u00e9cnicos y Cient\u00edficos","@id":"https:\/\/www.marcombo.com\/libros-tecnicos-y-cientificos\/"}},{"@type":"ListItem","position":3,"item":{"name":"Inform\u00e1tica","@id":"https:\/\/www.marcombo.com\/libros-tecnicos-y-cientificos\/informatica\/"}},{"@type":"ListItem","position":4,"item":{"name":"Dise\u00f1o Web","@id":"https:\/\/www.marcombo.com\/libros-tecnicos-y-cientificos\/informatica\/diseno-web\/"}},{"@type":"ListItem","position":5,"item":{"name":"El gran libro de HTML5, CSS3 y Javascript 2\u00aa Ed.","@id":"https:\/\/www.marcombo.com\/el-gran-libro-de-html5-css3-y-javascript-2a-ed-9788426719959\/"}}]}</script> <script type="text/javascript"> var c = document.body.className; c = c.replace(/woocommerce-no-js/, 'woocommerce-js'); document.body.className = c; </script> <link rel='stylesheet' id='wdm-juery-css-css' href='https://www.marcombo.com/wp-content/plugins/product-enquiry-for-woocommerce/css/wdm-jquery-ui.css?ver=5.2.2' type='text/css' media='all' /> <script type='text/javascript'> /* <![CDATA[ */ var wpcf7 = {"apiSettings":{"root":"https:\/\/www.marcombo.com\/wp-json\/contact-form-7\/v1","namespace":"contact-form-7\/v1"}}; /* ]]> */ </script> <script type='text/javascript' src='https://www.marcombo.com/wp-content/plugins/contact-form-7/includes/js/scripts.js?ver=5.1.3'></script> <script type='text/javascript' src='https://www.marcombo.com/wp-includes/js/jquery/jquery.form.min.js?ver=4.2.1'></script> <script type='text/javascript' src='https://www.marcombo.com/wp-content/plugins/bootstrap-for-contact-form-7/assets/dist/js/scripts.min.js?ver=1.4.8'></script> <script type='text/javascript'> /* <![CDATA[ */ var cnArgs = {"ajaxurl":"https:\/\/www.marcombo.com\/wp-admin\/admin-ajax.php","hideEffect":"fade","onScroll":"yes","onScrollOffset":"450","cookieName":"cookie_notice_accepted","cookieValue":"true","cookieTime":"2147483647","cookiePath":"\/","cookieDomain":"","redirection":"","cache":"","refuse":"no","revoke_cookies":"0","revoke_cookies_opt":"automatic","secure":"1"}; /* ]]> */ </script> <script type='text/javascript' src='https://www.marcombo.com/wp-content/plugins/cookie-notice/js/front.min.js?ver=1.2.46'></script> <script type='text/javascript' src='https://www.marcombo.com/wp-content/plugins/mystickymenu/js/detectmobilebrowser.js?ver=2.1.7'></script> <script type='text/javascript'> /* <![CDATA[ */ var option = {"mystickyClass":"#header","activationHeight":"70","disableWidth":"840","disableLargeWidth":"0","adminBar":"false","device_desktop":"1","device_mobile":"1","mystickyTransition":"slide","mysticky_disable_down":"false"}; /* ]]> */ </script> <script type='text/javascript' src='https://www.marcombo.com/wp-content/plugins/mystickymenu/js/mystickymenu.min.js?ver=2.1.7'></script> <script type='text/javascript' src='https://www.marcombo.com/wp-includes/js/hoverIntent.min.js?ver=1.8.1'></script> <script type='text/javascript'> /* <![CDATA[ */ var wc_single_product_params = {"i18n_required_rating_text":"Por favor elige una puntuaci\u00f3n","review_rating_required":"yes","flexslider":{"rtl":false,"animation":"slide","smoothHeight":true,"directionNav":false,"controlNav":"thumbnails","slideshow":false,"animationSpeed":500,"animationLoop":false,"allowOneSlide":false},"zoom_enabled":"","zoom_options":[],"photoswipe_enabled":"","photoswipe_options":{"shareEl":false,"closeOnScroll":false,"history":false,"hideAnimationDuration":0,"showAnimationDuration":0},"flexslider_enabled":""}; /* ]]> */ </script> <script type='text/javascript' src='https://www.marcombo.com/wp-content/plugins/woocommerce/assets/js/frontend/single-product.min.js?ver=3.6.5'></script> <script type='text/javascript' src='https://www.marcombo.com/wp-content/plugins/woocommerce/assets/js/jquery-blockui/jquery.blockUI.min.js?ver=2.70'></script> <script type='text/javascript' src='https://www.marcombo.com/wp-content/plugins/woocommerce/assets/js/js-cookie/js.cookie.min.js?ver=2.1.4'></script> <script type='text/javascript'> /* <![CDATA[ */ var woocommerce_params = {"ajax_url":"\/wp-admin\/admin-ajax.php","wc_ajax_url":"\/?wc-ajax=%%endpoint%%"}; /* ]]> */ </script> <script type='text/javascript' src='https://www.marcombo.com/wp-content/plugins/woocommerce/assets/js/frontend/woocommerce.min.js?ver=3.6.5'></script> <script type='text/javascript'> /* <![CDATA[ */ var wc_cart_fragments_params = {"ajax_url":"\/wp-admin\/admin-ajax.php","wc_ajax_url":"\/?wc-ajax=%%endpoint%%","cart_hash_key":"wc_cart_hash_1bfcdfb95b01f45ee9b79680c3cb8f6c","fragment_name":"wc_fragments_1bfcdfb95b01f45ee9b79680c3cb8f6c","request_timeout":"5000"}; /* ]]> */ </script> <script type='text/javascript' src='https://www.marcombo.com/wp-content/plugins/woocommerce/assets/js/frontend/cart-fragments.min.js?ver=3.6.5'></script> <script type='text/javascript' src='https://www.marcombo.com/wp-content/plugins/ajax-search-pro/js/nomin/photostack.js?ver=j102FB'></script> <script type='text/javascript' src='https://www.marcombo.com/wp-content/plugins/ajax-search-pro/js/min/chosen.jquery.min.js?ver=j102FB'></script> <script type='text/javascript'> /* <![CDATA[ */ var ajaxsearchpro = {"ajaxurl":"https:\/\/www.marcombo.com\/wp-admin\/admin-ajax.php","backend_ajaxurl":"https:\/\/www.marcombo.com\/wp-admin\/admin-ajax.php","js_scope":"jQuery"}; var ASP = {"ajaxurl":"https:\/\/www.marcombo.com\/wp-admin\/admin-ajax.php","backend_ajaxurl":"https:\/\/www.marcombo.com\/wp-admin\/admin-ajax.php","js_scope":"jQuery","asp_url":"https:\/\/www.marcombo.com\/wp-content\/plugins\/ajax-search-pro\/","upload_url":"https:\/\/www.marcombo.com\/wp-content\/uploads\/asp_upload\/","detect_ajax":"0","media_query":"j102FB","version":"4987","scrollbar":"1","css_loaded":"1","js_retain_popstate":"0","fix_duplicates":"1"}; /* ]]> */ </script> <script type='text/javascript' src='https://www.marcombo.com/wp-content/plugins/ajax-search-pro/js/min/jquery.ajaxsearchpro-noui-isotope.min.js?ver=j102FB'></script> <script type='text/javascript' src='https://www.marcombo.com/wp-includes/js/jquery/ui/core.min.js?ver=1.11.4'></script> <script type='text/javascript' src='https://www.marcombo.com/wp-includes/js/jquery/ui/datepicker.min.js?ver=1.11.4'></script> <script type='text/javascript'> jQuery(document).ready(function(jQuery){jQuery.datepicker.setDefaults({"closeText":"Cerrar","currentText":"Hoy","monthNames":["enero","febrero","marzo","abril","mayo","junio","julio","agosto","septiembre","octubre","noviembre","diciembre"],"monthNamesShort":["Ene","Feb","Mar","Abr","May","Jun","Jul","Ago","Sep","Oct","Nov","Dic"],"nextText":"Siguiente","prevText":"Previo","dayNames":["domingo","lunes","martes","mi\u00e9rcoles","jueves","viernes","s\u00e1bado"],"dayNamesShort":["dom","lun","mar","mi\u00e9","jue","vie","s\u00e1b"],"dayNamesMin":["D","L","M","X","J","V","S"],"dateFormat":"d MM, yy","firstDay":1,"isRTL":false});}); </script> <script type='text/javascript'> /* <![CDATA[ */ var wpcf7cf_global_settings = {"ajaxurl":"https:\/\/www.marcombo.com\/wp-admin\/admin-ajax.php"}; /* ]]> */ </script> <script type='text/javascript' src='https://www.marcombo.com/wp-content/plugins/cf7-conditional-fields/js/scripts.js?ver=1.6.4'></script> <script type='text/javascript'> /* <![CDATA[ */ var megamenu = {"timeout":"300","interval":"100"}; /* ]]> */ </script> <script type='text/javascript' src='https://www.marcombo.com/wp-content/plugins/megamenu/js/maxmegamenu.js?ver=2.7.1.4'></script> <script type='text/javascript' src='https://www.marcombo.com/wp-includes/js/wp-embed.min.js?ver=5.2.2'></script> <script type='text/javascript' src='https://www.marcombo.com/wp-includes/js/jquery/ui/widget.min.js?ver=1.11.4'></script> <script type='text/javascript' src='https://www.marcombo.com/wp-includes/js/jquery/ui/mouse.min.js?ver=1.11.4'></script> <script type='text/javascript' src='https://www.marcombo.com/wp-includes/js/jquery/ui/resizable.min.js?ver=1.11.4'></script> <script type='text/javascript' src='https://www.marcombo.com/wp-includes/js/jquery/ui/draggable.min.js?ver=1.11.4'></script> <script type='text/javascript' src='https://www.marcombo.com/wp-includes/js/jquery/ui/button.min.js?ver=1.11.4'></script> <script type='text/javascript' src='https://www.marcombo.com/wp-includes/js/jquery/ui/position.min.js?ver=1.11.4'></script> <script type='text/javascript' src='https://www.marcombo.com/wp-includes/js/jquery/ui/dialog.min.js?ver=1.11.4'></script> <script type='text/javascript' src='https://www.marcombo.com/wp-content/plugins/product-enquiry-for-woocommerce/js/wdm_jquery.validate.min.js?ver=5.2.2'></script> <script type='text/javascript'> /* <![CDATA[ */ var object_name = {"ajaxurl":"https:\/\/www.marcombo.com\/wp-admin\/admin-ajax.php","product_name":"El gran libro de HTML5, CSS3 y Javascript 2\u00aa Ed.","wdm_customer_name":"Name is required.","wdm_customer_email":"Enter valid Email Id.","wdm_txtphone_required":"Phone number is required.","wdm_txtphone_invalid":"Enter valid phone number.","wdm_enquiry":"Enquiry length must be atleast 10 characters."}; /* ]]> */ </script> <script type='text/javascript' src='https://www.marcombo.com/wp-content/plugins/product-enquiry-for-woocommerce/js/contact.js?ver=5.2.2'></script> <!-- WooCommerce JavaScript --> <script type="text/javascript"> jQuery(function($) { /* WooCommerce Facebook Integration Event Tracking */ fbq('track', 'ViewContent', { "source": "woocommerce", "version": "3.6.5", "pluginVersion": "1.9.15", "content_name": "El gran libro de HTML5, CSS3 y Javascript 2\u00aa Ed.", "content_ids": "[\"9788426719959_1366\"]", "content_type": "product_group", "value": 27.31, "currency": "EUR" }); jQuery( function( $ ) { var ppec_mark_fields = '#woocommerce_ppec_paypal_title, #woocommerce_ppec_paypal_description'; var ppec_live_fields = '#woocommerce_ppec_paypal_api_username, #woocommerce_ppec_paypal_api_password, #woocommerce_ppec_paypal_api_signature, #woocommerce_ppec_paypal_api_certificate, #woocommerce_ppec_paypal_api_subject'; var ppec_sandbox_fields = '#woocommerce_ppec_paypal_sandbox_api_username, #woocommerce_ppec_paypal_sandbox_api_password, #woocommerce_ppec_paypal_sandbox_api_signature, #woocommerce_ppec_paypal_sandbox_api_certificate, #woocommerce_ppec_paypal_sandbox_api_subject'; var enable_toggle = $( 'a.ppec-toggle-settings' ).length > 0; var enable_sandbox_toggle = $( 'a.ppec-toggle-sandbox-settings' ).length > 0; $( '#woocommerce_ppec_paypal_environment' ).change(function(){ $( ppec_sandbox_fields + ',' + ppec_live_fields ).closest( 'tr' ).hide(); if ( 'live' === $( this ).val() ) { $( '#woocommerce_ppec_paypal_api_credentials, #woocommerce_ppec_paypal_api_credentials + p' ).show(); $( '#woocommerce_ppec_paypal_sandbox_api_credentials, #woocommerce_ppec_paypal_sandbox_api_credentials + p' ).hide(); if ( ! enable_toggle ) { $( ppec_live_fields ).closest( 'tr' ).show(); } } else { $( '#woocommerce_ppec_paypal_api_credentials, #woocommerce_ppec_paypal_api_credentials + p' ).hide(); $( '#woocommerce_ppec_paypal_sandbox_api_credentials, #woocommerce_ppec_paypal_sandbox_api_credentials + p' ).show(); if ( ! enable_sandbox_toggle ) { $( ppec_sandbox_fields ).closest( 'tr' ).show(); } } }).change(); $( '#woocommerce_ppec_paypal_enabled' ).change(function(){ if ( $( this ).is( ':checked' ) ) { $( ppec_mark_fields ).closest( 'tr' ).show(); } else { $( ppec_mark_fields ).closest( 'tr' ).hide(); } }).change(); $( '#woocommerce_ppec_paypal_paymentaction' ).change(function(){ if ( 'sale' === $( this ).val() ) { $( '#woocommerce_ppec_paypal_instant_payments' ).closest( 'tr' ).show(); } else { $( '#woocommerce_ppec_paypal_instant_payments' ).closest( 'tr' ).hide(); } }).change(); if ( enable_toggle ) { $( document ).off( 'click', '.ppec-toggle-settings' ); $( document ).on( 'click', '.ppec-toggle-settings', function( e ) { $( ppec_live_fields ).closest( 'tr' ).toggle( 'fast' ); e.preventDefault(); } ); } if ( enable_sandbox_toggle ) { $( document ).off( 'click', '.ppec-toggle-sandbox-settings' ); $( document ).on( 'click', '.ppec-toggle-sandbox-settings', function( e ) { $( ppec_sandbox_fields ).closest( 'tr' ).toggle( 'fast' ); e.preventDefault(); } ); } $( '.woocommerce_ppec_paypal_button_layout' ).change( function( event ) { if ( ! $( '#woocommerce_ppec_paypal_use_spb' ).is( ':checked' ) ) { return; } // Show settings that pertain to selected layout in same section var isVertical = 'vertical' === $( event.target ).val(); var table = $( event.target ).closest( 'table' ); table.find( '.woocommerce_ppec_paypal_vertical' ).closest( 'tr' ).toggle( isVertical ); table.find( '.woocommerce_ppec_paypal_horizontal' ).closest( 'tr' ).toggle( ! isVertical ); // Disable 'small' button size option in vertical layout only var button_size = table.find( '.woocommerce_ppec_paypal_button_size' ); var button_size_option = button_size.find( 'option[value="small"]' ); if ( button_size_option.prop( 'disabled' ) !== isVertical ) { button_size.removeClass( 'enhanced' ) button_size_option.prop( 'disabled', isVertical ); $( document.body ).trigger( 'wc-enhanced-select-init' ); ! button_size.val() && button_size.val( 'responsive' ).change(); } } ).change(); // Hide default layout and size settings if they'll be overridden anyway. function showHideDefaultButtonSettings() { var display = $( '#woocommerce_ppec_paypal_cart_checkout_enabled' ).is( ':checked' ) || ( $( '#woocommerce_ppec_paypal_checkout_on_single_product_enabled' ).is( ':checked' ) && ! $( '#woocommerce_ppec_paypal_single_product_settings_toggle' ).is( ':checked' ) ) || ( $( '#woocommerce_ppec_paypal_mark_enabled' ).is( ':checked' ) && ! $( '#woocommerce_ppec_paypal_mark_settings_toggle' ).is( ':checked' ) ); $( '#woocommerce_ppec_paypal_button_layout, #woocommerce_ppec_paypal_button_size, #woocommerce_ppec_paypal_hide_funding_methods, #woocommerce_ppec_paypal_credit_enabled' ).closest( 'tr' ).toggle( display ); display && $( '#woocommerce_ppec_paypal_button_layout' ).change(); } // Toggle mini-cart section based on whether checkout on cart page is enabled $( '#woocommerce_ppec_paypal_cart_checkout_enabled' ).change( function( event ) { if ( ! $( '#woocommerce_ppec_paypal_use_spb' ).is( ':checked' ) ) { return; } var checked = $( event.target ).is( ':checked' ); $( '#woocommerce_ppec_paypal_mini_cart_settings_toggle, .woocommerce_ppec_paypal_mini_cart' ) .closest( 'tr' ) .add( '#woocommerce_ppec_paypal_mini_cart_settings' ) // Select title. .next( 'p' ) // Select description if present. .addBack() .toggle( checked ); checked && $( '#woocommerce_ppec_paypal_mini_cart_settings_toggle' ).change(); showHideDefaultButtonSettings(); } ).change(); $( '#woocommerce_ppec_paypal_mini_cart_settings_toggle' ).change( function( event ) { // Only show settings specific to mini-cart if configured to override global settings. var checked = $( event.target ).is( ':checked' ); $( '.woocommerce_ppec_paypal_mini_cart' ).closest( 'tr' ).toggle( checked ); checked && $( '#woocommerce_ppec_paypal_mini_cart_button_layout' ).change(); showHideDefaultButtonSettings(); } ).change(); $( '#woocommerce_ppec_paypal_checkout_on_single_product_enabled, #woocommerce_ppec_paypal_single_product_settings_toggle' ).change( function( event ) { if ( ! $( '#woocommerce_ppec_paypal_use_spb' ).is( ':checked' ) ) { return; } if ( ! $( '#woocommerce_ppec_paypal_checkout_on_single_product_enabled' ).is( ':checked' ) ) { // If product page button is disabled, hide remaining settings in section. $( '#woocommerce_ppec_paypal_single_product_settings_toggle, .woocommerce_ppec_paypal_single_product' ).closest( 'tr' ).hide(); } else if ( ! $( '#woocommerce_ppec_paypal_single_product_settings_toggle' ).is( ':checked' ) ) { // If product page button is enabled but not configured to override global settings, hide remaining settings in section. $( '#woocommerce_ppec_paypal_single_product_settings_toggle' ).closest( 'tr' ).show(); $( '.woocommerce_ppec_paypal_single_product' ).closest( 'tr' ).hide(); } else { // Show all settings in section. $( '#woocommerce_ppec_paypal_single_product_settings_toggle, .woocommerce_ppec_paypal_single_product' ).closest( 'tr' ).show(); $( '#woocommerce_ppec_paypal_single_product_button_layout' ).change(); } showHideDefaultButtonSettings(); } ).change(); $( '#woocommerce_ppec_paypal_mark_enabled, #woocommerce_ppec_paypal_mark_settings_toggle' ).change( function() { if ( ! $( '#woocommerce_ppec_paypal_use_spb' ).is( ':checked' ) ) { return; } if ( ! $( '#woocommerce_ppec_paypal_mark_enabled' ).is( ':checked' ) ) { // If checkout page button is disabled, hide remaining settings in section. $( '#woocommerce_ppec_paypal_mark_settings_toggle, .woocommerce_ppec_paypal_mark' ).closest( 'tr' ).hide(); } else if ( ! $( '#woocommerce_ppec_paypal_mark_settings_toggle' ).is( ':checked' ) ) { // If checkout page button is enabled but not configured to override global settings, hide remaining settings in section. $( '#woocommerce_ppec_paypal_mark_settings_toggle' ).closest( 'tr' ).show(); $( '.woocommerce_ppec_paypal_mark' ).closest( 'tr' ).hide(); } else { // Show all settings in section. $( '#woocommerce_ppec_paypal_mark_settings_toggle, .woocommerce_ppec_paypal_mark' ).closest( 'tr' ).show(); $( '#woocommerce_ppec_paypal_mark_button_layout' ).change(); } showHideDefaultButtonSettings(); } ).change(); // Make sure handlers are only attached once if script is loaded multiple times. $( '#woocommerce_ppec_paypal_use_spb' ).off( 'change' ); $( '#woocommerce_ppec_paypal_use_spb' ).change( function( event ) { var checked = $( event.target ).is( ':checked' ); // Show settings specific to Smart Payment Buttons only if enabled. $( '.woocommerce_ppec_paypal_spb' ).not( 'h3 ').closest( 'tr' ).toggle( checked ); $( '.woocommerce_ppec_paypal_spb' ).filter( 'h3' ).next( 'p' ).addBack().toggle( checked ); if ( checked ) { // Trigger all logic that controls visibility of other settings. $( '.woocommerce_ppec_paypal_visibility_toggle' ).change(); } else { // If non-SPB mode is enabled, show all settings that may have been hidden. $( '#woocommerce_ppec_paypal_button_size, #woocommerce_ppec_paypal_credit_enabled' ).closest( 'tr' ).show(); } // Hide 'Responsive' button size option in SPB mode, and make sure to show 'Small' option. var button_size = $( '#woocommerce_ppec_paypal_button_size' ).removeClass( 'enhanced' ); button_size.find( 'option[value="responsive"]' ).prop( 'disabled', ! checked ); ! checked && button_size.find( 'option[value="small"]' ).prop( 'disabled', false ); $( document.body ).trigger( 'wc-enhanced-select-init' ); } ).change(); // Reset button size values to default when switching modes. $( '#woocommerce_ppec_paypal_use_spb' ).change( function( event ) { if ( $( event.target ).is( ':checked' ) ) { // In SPB mode, set to recommended 'Responsive' value so it is not missed. $( '#woocommerce_ppec_paypal_button_size' ).val( 'responsive' ).change(); } else if ( ! $( '#woocommerce_ppec_paypal_button_size' ).val() ) { // Set back to original default for non-SPB mode. $( '#woocommerce_ppec_paypal_button_size' ).val( 'large' ).change(); } } ); }); ga( 'send', 'pageview' ); }); </script> <div id="cookie-notice" role="banner" class="cn-bottom bootstrap" style="color: #fff; background-color: #a3ad05;"><div class="cookie-notice-container"><span id="cn-notice-text">Utilizamos cookies para asegurar que damos la mejor experiencia al usuario en nuestro sitio web. Si continúa utilizando este sitio asumiremos que está de acuerdo.</span><a href="#" id="cn-accept-cookie" data-cookie-set="accept" class="cn-set-cookie cn-button bootstrap button">Estoy de acuerdo</a> </div> </div><script src="//www.google-analytics.com/urchin.js" type="text/javascript"></script> <script type="text/javascript"> _uacct = "UA-2297302-1"; urchinTracker(); </script> </body> </html>