No es un bug, es una característica no documentada

Mostrando entradas con la etiqueta CSS. Mostrar todas las entradas
Mostrando entradas con la etiqueta CSS. Mostrar todas las entradas

12/10/16

Galería web responsive. HTML5 + Bootstrap + PHP + Magnific Popup

23:45 Posted by Inazio Claver , , No comments
Image
Realizando una página web me surgió la necesidad de crear una sección que sirviera de galería para que el cliente pueda mostrar todos sus trabajos.
Los requisitos que buscaba es que fuera responsive y que su carga fuese rápida. No quería perder mucho tiempo desarrollando una galería con esas características desde cero y me puse a buscar hasta que llegué a este proyecto en Git Hub de Dmitry Semenov: https://github.com/dimsemenov/Magnific-Popup.

19/9/16

Zen coding con Emmet

0:31 Posted by Inazio Claver , No comments
Image
Cada vez que desarrollo una página web lo que más pesado se me hace es escribir siempre la estructura básica de la misma, y tener que abrir y cerrar etiquetas constantemente. Puede parecer una tontería, pero siento como que se pierde un montón de tiempo en algo tan banal como crear dos listas anidadas en HTML, definir la estructura de un HTML5, etc.

Dispuesto a encontrar una manera de agilizar ese proceso, hace unos meses, mientras desarrollaba mi proyecto final de ciclo, descubrí el Zen coding, y junto a él, Emmet.

¿Y qué es el Zen coding? Es la mejora de la productividad en la creación de páginas web, a base de la generación de abreviaturas para escribir código HTML y CSS. Y en Emmet encontré su máximo exponente.

Emmet son sintaxis de abreviaturas ya predefinidas que nos permite, en una sola línea, escribir estructuras complejas HTML, añadiendole atributos, clases, identificadores y contenido.

11/6/15

Lenguajes de marcas. Prácticas y teoría (TODO COMPLETO)

20:05 Posted by Inazio , , , , , No comments
Este curso, mientras estudiaba por las mañanas, me apunte a un certificado profesional de creación de páginas web.

Estudié HTML5 y CSS3, junto con algo de JavaScript. Por desgracia tuve que abandonar el curso antes de poder ver jQuery, Ajax y poder refrescar PHP, pero la verdad que aprendí bastante.

Hablando con un compañero de DAM por las mañanas comento que quería echarle un vistazo a estos temas en verano, así que aprovecho la plataforma para colgar todos los apuntes y trabajos que he realizado tanto en éste módulo de Lenguajes de marcas como en el certificado de por la tarde.

En verano iré ampliando la información con JavaScript y jQuery, en cuanto un compañero de por la tarde me pase lo que han continuado haciendo.

Esta todo montado en una carpeta en el Drive. Disfrutadla :)

Los temas a tratar son:
  • HTML
  • CSS
  • PHP
  • JAVASCRIPT
  • JQUERY
  • AJAX
  • XML / XSLT
Podeís visitar el enlace pulsando aquí.

9/1/15

Lenguajes de marcas. CSS (IV)

13:33 Posted by Inazio , No comments
Vamos a ver como podemos incrustar texto con diversas fuentes en nuestra página web.

Antes se usaban "fuentes seguras", como Helvética, Arial, y en todo caso a lo mejor Sans-serif

font-family: arial, helvetica, sans-serif

En este caso el navegador usaba primero la arial, si no la tiene la helvetica, y si no una cualquiera sin serifear.

Ahora podemos usar un código especial para cargar una fuente en la página web, que se descargará al ordenador del usuario.

Es @font-face (el arroba indica que declararemos una nueva fuente).

Es decir:

Image

Y posteriormente hacer referencia al parrafo donde aplicar esta fuente:

Image

Código para usar en la web:

@font-face {
  font-family: 'Akronim';
    src: url('fonts/Akronim-Regular.eot'); /* Para Internet Explorer */
    src: local('Akronim'), /* Para el resto de navegadores */
         url('fonts/Akronim-Regular.ttf') format('truetype'),
         url('fonts/Akronim-Regular.woff') format('woff'),
         url('fonts/Akronim-Regular.svg') format('svg')
}

p {
    font-family: 'Akronim', cursive;
    font-size:1.5em;
}

/* dafont.com para conseguir fuentes */

Para la práctica de hoy nos descargaremos una fuente X para realizar la prueba

Image

y en el css de nuestra página, escribimos lo siguiente:

Image

y para que afecte sólo a lo que queremos:

Image

Y ya podemos ver el resultado por pantalla

Image

28/11/14

Lenguaje de marcas. CSS(III)

13:42 Posted by Inazio , No comments
Crear botones redondeados

Código HTML

Image

CSS

Image


Resultado
Image

Asimismo, podemos aplicarle una opacidad entre 0 y 1, y elegir distinto radio si nos posicionamos encima de estos.

Image

Resultado

Image

Podemos trabajar el mismo código indicando esto desde el nav, para ello usaremos selectores de not dentro de la sección, es decir

nav:hover a:not(:hover) {

}
nav:hover a:hover {

}

Ejemplo.

HTML

Image

CSS

Image

Vistazo

Image

Image

Y con eso podemos llegar a hacer muchas más cosas, según aplicamos a tablas, tds, etc.

Image

Image

Si queremos afinar la transición, añadiremos el atributo transition, que nos permite hacer que el efecto se realice en x tiempo

Image

A continuación dejo el código del HTML y del CSS

HTML

<!DOCTYPE html>
<html>
     <head>
         <title>Botones redondeados</title>
         <link rel="stylesheet" type="text/css" href="css/estilos.css" media="screen" />
         <meta charset="UTF-8" />
     </head>
    
     <body>
         <nav>
              <a href="www.finofilipino.org" target="_blank">FinoFilipino</a>
              <a href="www.forocoches.com" target="_blank">Forocoches</a>    
              <a href="series.ly" target="_blank">Series.ly</a>  
         </nav>
         <section>
              <table>
                   <tr>
                        <td>1</td>
                        <td>2</td>
                        <td>3</td>
                   </tr>
                   <tr>
                        <td>4</td>
                        <td>5</td>
                        <td>6</td>
                   </tr>
                   <tr>
                        <td>7</td>
                        <td>8</td>
                        <td>9</td>
                   </tr>        
              </table>
         </section>
     </body>
</html>

CSS

body {
     background-color: grey;
}

a {
     background-color: black;
     color: white;
     padding: 5px;
     border-color: #000000;
     border-style: solid;
     border-width: 2px;
     border-radius: 35px;
     opacity: 1;
    
}

nav:hover a:hover {
     background-color: yellow;
     border-radius: 0px;
     color: black;
     opacity: 1;
     transition-duration: 1s;
}


nav:hover a:not(:hover) {
     opacity: 0.5;
}

section {
     position: absolute;
     top: 50px;

}
table {
     border: solid organge 3px;
     border-radius: 10px;
}

table td:hover{
     background-color: white;
}

td {
     border: 2px solid white;
     padding: 5px;
     border-radius: 10px;
}



19/11/14

Lenguaje de marcas. CSS (II)

11:13 Posted by Inazio , No comments
Atributo position

  • static: Se mantendrá en esa posición, pero dejará de ser visible al mover la págin.
  • absolute: Permite posicionar el elemento donde queramos dentro de la página web, superponiendo a todos los demás. Siempre es relativa al elemento que la contiene.
  • relative: Permite poner nuestro elemento donde queramos dentro de la página web
  • fixed: Atributo que siempre se mantendrá en esa posicion, aunque hagamos scroll
Atributo z-index

Organiza la profundidad de los elementos en una página. Cuanto mayor sea el z-index, más arriba estará en la página web dicho elemento.

 

10/11/14

Lenguaje de marcas. Menús desplegables

8:57 Posted by Inazio , , No comments
Antes un menú desplegable sólo podía realizarse con JavaScript, JQuery o similar. Ahora, con la nueva implantación de CSS (CSS3), es posible hacerlo sin necesidad de recurrir a ese lenguaje. Que bueno, también lo era antes, con CSS2, pero queda más guay decirlo así y pensar que CSS2 no daba la oportunidad. He dicho.

A lo que iba. La premisa básica para realizar éstas acciones es trabajar ocultando elementos. ¿Cómo?

Comenzaremos creando una lista de elementos. Un botón por ejemplo, o la simulación de un botón. A ese elemento le aplicaremos un atributo :hover para mostrar sus subelementos

Vamos a crear una lista

El archivo HTML es muy sencillito, trabajando con listas y dentro de los elementos de lista otras listas. ¿Habéis visto cuántas veces he repetido la palabra lista? Quizá sea falta de léxico...

Image
<head>

Image
<body>

El CSS lo aplicaremos por capas. Cada línea la he comentado para mayor comprensión del lenguaje:

Image

Image

El resultado que podemos ver es este:

Image


Este código se ha ido haciendo en clase, con todos los compañeros juntos. No es la mejor elección de color, pero como ejemplo sirve.

Y pensaréis "ostias, y ¿todo eso tengo que escribirlo a mano para poder probar el código?". Tranquilos, si está to' pensao. A continuación os dejo tanto el código HTML como el CSS. Que lo disfrutéis.

Código HTML

<!DOCTYPE html>
<html>
<head>
<title>Menús desplegables html y css</title>
<meta charset="UTF-8">
<link href="estilo.css" type="text/css" rel="stylesheet" media="screen">
</head>

<body>
<nav>
<ul>
<li>Item1
<ul>
<li>Item1.1</li>
<li>Item1.2</li>
</ul>
</li>
<li>Item2
<ul>
<li>Item2.1</li>
<li>Item2.2
<ul>
<li>Item2.2.1</li>
<li>Item2.2.2</li>
</ul>
</li>
</ul>
</li>
<li>Item3
<ul>
<li>Item3.1
<ul>
<li>Item3.1.1</li>
<li>Item3.1.2</li>
</ul>
</li>
<li>Item3.2</li>
</ul>
</li>
<li>Item4</li>
<li>Item5</li>
</ul>
</nav>
</body>
</html>

Código CSS

/* Aplicamos margin y padding a todos los elementos */
*{
margin: 0;
padding: 0;
}

/*Estilo a todos los li dentro del nav */
nav li{
list-style-type: none;
background-color: yellow;
border-style: solid;
border-width: 1px;
border-color: black;
color: black;
}
/* Los li hijos de los ul hijos del nav se presentarán a la izquierda */
nav > ul > li{
float: left;
}

/* Cuándo pasemos por los li dentro del nav se pondrán de color naranja */
nav li:hover{
color: orange;
}

/* Ordenamos los hijos li de los hijos ul de nav para ponerlos en una misma línea */
nav > ul > li{
margin: 5px;
display: inline;
}

/* Tamaño de los li que están dentro de los ul hijos */
nav > ul li{
min-width: 70px;
}

/* Posición fija y eliminar los símbolos de lista de los ul dentro de li dentro de un ul hijo de nav */
nav > ul li ul{
display: none;
position: absolute;
}

/* Mostrar el submenú cuando pasemos sobre el li correspondiente */
nav > ul li:hover > ul{
display: block;
}

/* Dar posición no fija a los ul dentro de li dentro de ul hijo de nav */
nav > ul li ul {
position: relative;
}

/* Alinear a la derecha del li seleccionado el submenú desplegable*/
nav > ul li ul li ul {
right: -70px;
position: absolute;
top: 0;
}

Si queréis visitar el tutorial que nos ha "inspirado" está aquí.

18/10/14

Lenguaje de marcas. CSS (I)

22:37 Posted by Inazio , No comments
Visibilidad de los elementos

En la etiqueta CSS que queramos cambiar:

visibility:hidden à Oculta el elemento, manteniendo su espacio. Digamos que pone una opacidad del 0%

Image

display:none à Oculta el elemento, y el espacio que ocupa

Image

Selectores CSS

Para aplicar los estilos a determinados elementos, necesitaremos poner estos códigos:
  • A un elemento à a { } <!-- Se aplica a todas las etiquetas a -->
  • A varios elementos à a,aside{ } <!-- Se aplica a varios elementos -->
  • A los id à #panelizquierdo { } <!-- Para todos los elementos con ese id -->
  • Por clases à .enlaceRojo { } <!-- Es una diferencia a nivel conceptual con los id. Es para aplicar “en masa”. Id es para aplicarlos a algo concreto, a un header por ejemplo }
    • Para nombrar el class: <a class=”enlaceRojo”>

Veamos un ejemplo. Como mostrar, por ejemplo, en orden los enlaces que están dentro del nav:
nav a { }

Si tenemos dos nav:
nav a { }

O también:
nav#azul a { } <!-- Sólo los enlaces que estén en un nav hijo de azul-->

Entonces, para ordenarlos horizontalmente, por ejemplo:
nav a {
display:inline;
}

Margin y Padding

Margin despeja un área del elemento, más allá del borde. El margen no tiene un color de fondo, y es siempre completamente transparente.

El padding despeja un área alrededor del contenido (dentro del borde)

Image

La página hasta ahora ha sido editada para mostrar todo lo mencionado en este entrada y en las anteriores. Si deseas descargar la versión de la web hasta el día 17/09/2014 pulsa aquí