FlexBox

http://www.emenia.es/flexbox-la-caja-flexible-css3/

Demo visual muy interesante:

https://demos.scotch.io/visual-guide-to-css3-flexbox-flexbox-playground/demos/

Otra con animaciones:

Flexbox el tutorial animado

Guía completa:

A Complete Guide to Flexbox

Templates con flexbox:

https://www.quackit.com/html/templates/css_flexbox_templates.cfm

Cómo calcular como crecen y se encogen los elementos (no es tan sencillo como parece):

https://ed.team/blog/guia-definitiva-de-flexbox-2-flex-basis-flex-frow-flex-shrink

Ejemplos prácticos de cómo hacer cosas con flexbox:

https://www.sketchingwithcss.com/samplechapter/cheatsheet.html

mascotas

Css:


*{
font-family:Verdana,serif;
}
header,aside,section,footer{
padding:1rem;
}
header{
height:10rem;

background-image: url("img/logo2.png"), url("img/gato.jpg");
background-size:160px 160px, cover;
background-repeat: no-repeat,repeat;

}
aside{
width:15rem;
height:40rem;
background-image:linear-gradient(rgba(200,190,160,1),rgba(200,190,160,.7)),url("img/gato.jpg");
float:left;
}
section{
margin-left:17rem;
background-color: #DCD9D4;
background: linear-gradient(to bottom, #abbaab,#ffffff);
min-height:40rem;
padding:1rem 10rem;
}
footer{
height:3rem;
background-color:black;
color:white;
}

header h1{
font-family: 'Carter One', cursive;
font-size:5rem;
margin:0;
}
aside ul{
list-style-type:none;
padding:0;
}

aside ul li {
padding: 8px 16px;
border: 1px solid #ddd;
background-color:PowderBlue ;
margin-top:.5rem;
}
aside ul li:hover {
background-color:yellowgreen;
}
aside ul li a{
text-decoration:none;
font-size:1.5em;
}
.destacado{
color:yellow;
}
#fotos figure img{
width: 100%;
height: auto;
}
#fotos figure a img{
width: 32px;
position:absolute;
right:5px;
top:5px;
}
#fotos figure{
margin: 20px;
border: 1px solid #ccc;
float: left;
width: 300px;
box-shadow: 10px 10px 5px #AAAAAA;
opacity:.8;
position:relative;
transition: transform 1s;
animation: sombra 2s ease 0s 2 alternate;
}
#fotos figure:hover{
border: 1px solid #777;
box-shadow: 10px 10px 5px #555555;
opacity:1;
transform:rotate(15deg) scale(1.05);

}
#fotos figcaption{
padding: 15px;
text-align: center;
background-color: white;
opacity:0;
transform:translate(0,-100px);
transition: opacity 1s, transform 2s;
}
#fotos:hover figcaption{
padding: 15px;
text-align: center;

opacity:1;
transform:translate(0);
}
@keyframes sombra{
from{transform:rotate(0);}
to {transform:rotate(180deg);}
}

#productos {
font-family: "Trebuchet MS", Arial, Helvetica, sans-serif;
border-collapse: collapse;
width: 100%;
}

#productos td, #productos th {
border: 1px solid #ddd;
padding: 8px;
}

#productos tr:nth-child(even){background-color: #f2f2f2;}

#productos tr:hover {background-color: #ddd;}

#productos th {
padding-top: 12px;
padding-bottom: 12px;
text-align: left;
background-color: #4CAF50;
color: white;
}

nav ul li{
display: inline-block;
padding:10px;
color:white;
}
nav ul{
background-color: grey;
margin:0;
}

index


<!DOCTYPE html>
<html>

<head>
<title></title>
<meta charset="utf-8">
<link rel="stylesheet" type="text/css" href="layout.css">
<link href="https://fonts.googleapis.com/css?family=Carter+One" rel="stylesheet">
</head>

<body>

<header>
<h1>La web de los gatitos </h1>
</header>

<main>

<aside>
<ul>
<li><a href="fotos.html">Fotos</a></li>
<li><a href="prod.html">Productos</a></li>
<li><a href="tienda.html">Tienda</a></li>
</ul>
</aside>

<section>
<h2>Bienvenido a la web de los gatitos 你好 Голя أولا</h2>
<p>Lorem ipsum dolor sit amet, consectetur adipiscing elit,
sed do eiusmod tempor incididunt ut labore et dolore magna aliqua.
Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi
ut aliquip ex ea commodo consequat. Duis aute irure dolor in reprehenderit in
voluptate velit esse cillum dolore eu fugiat nulla pariatur. Excepteur sint
occaecat cupidatat non proident, sunt in culpa qui officia deserunt mollit anim id est laborum.</p>
<video width="640" height="480" controls>
<source src="img/gato.mp4" type="video/mp4">
El navegador no soporta vídeos.
</video>
</section>

</main>
<footer>
<p>(c) Netmind</p>
</footer>
</body>
</html>


<!DOCTYPE html>
<html>

<head>
<title></title>
<meta charset="utf-8">
<link rel="stylesheet" type="text/css" href="layout.css">
<link href="https://fonts.googleapis.com/css?family=Carter+One" rel="stylesheet">

</head>

<body>

<header>
<h1>La web de los gatitos </h1>
</header>

<main>

<aside>
<ul>
<li><a href="index.html">Inicio</a></li>
<li><a href="fotos.html">Fotos</a></li>
<li><a href="prod.html">Productos</a></li>
<li><a href="fotos.html">Tienda</a></li>
</ul>
</aside>

<section id="fotos">

<h2>Fotos tiernas</h2>
<figure>
<a href="http://facebook.com">
<img src="img/logo.png" width="32" height="32" alt=""/></a>
<img src="img/gato.jpg" alt=""/>
<figcaption>Un lindo gatito</figcaption>
</figure>
<figure>
<a href="http://facebook.com">
<img src="img/logo.png" width="32" height="32" alt=""/></a>
<img src="img/mascota.jpg" alt=""/>
<figcaption>Amor a los animales</figcaption>
</figure>
<figure>
<a href="http://facebook.com">
<img src="img/logo.png" width="32" height="32" alt=""/></a>
<img src="img/perro2.jpg" alt=""/>
<figcaption>El mejor amigo del hombre</figcaption>
</figure>

</section>

</main>
<footer>
<p>(c) Netmind</p>
</footer>
</body>
</html>

Fotos con logo facebook


<!DOCTYPE html>
<html>

<head>
<title></title>
<meta charset="utf-8">
<link rel="stylesheet" type="text/css" href="layout.css">
<link href="https://fonts.googleapis.com/css?family=Carter+One" rel="stylesheet">

</head>

<body>

<header>
<h1>La web de los gatitos </h1>
</header>

<main>

<aside>
<ul>
<li><a href="index.html">Inicio</a></li>
<li><a href="fotos.html">Fotos</a></li>
<li><a href="prod.html">Productos</a></li>
<li><a href="fotos.html">Tienda</a></li>
</ul>
</aside>

<section id="fotos">

<h2>Fotos tiernas</h2>
<figure>
<a href="http://facebook.com">
<img src="img/logo.png" width="32" height="32" alt=""/></a>
<img src="img/gato.jpg" alt=""/>
<figcaption>Un lindo gatito</figcaption>
</figure>
<figure>
<a href="http://facebook.com">
<img src="img/logo.png" width="32" height="32" alt=""/></a>
<img src="img/mascota.jpg" alt=""/>
<figcaption>Amor a los animales</figcaption>
</figure>
<figure>
<a href="http://facebook.com">
<img src="img/logo.png" width="32" height="32" alt=""/></a>
<img src="img/perro2.jpg" alt=""/>
<figcaption>El mejor amigo del hombre</figcaption>
</figure>

</section>

</main>
<footer>
<p>(c) Netmind</p>
</footer>
</body>
</html>

*{
font-family:Verdana,serif;
}
header,aside,section,footer{
padding:1rem;
}
header{
height:10rem;

background-image: url("img/logo2.png"), url("img/gato.jpg");
background-size:160px 160px, cover;
background-repeat: no-repeat,repeat;

}
aside{
width:15rem;
height:40rem;
background-image:linear-gradient(rgba(200,190,160,1),rgba(200,190,160,.7)),url("img/gato.jpg");
float:left;
}
section{
margin-left:17rem;
background-color: #DCD9D4;
background: linear-gradient(to bottom, #abbaab,#ffffff);
min-height:40rem;
padding:1rem 10rem;
}
footer{
height:3rem;
background-color:black;
color:white;
}

header h1{
font-family: 'Carter One', cursive;
font-size:5rem;
margin:0;
}
aside ul{
list-style-type:none;
padding:0;
}

aside ul li {
padding: 8px 16px;
border: 1px solid #ddd;
background-color:PowderBlue ;
margin-top:.5rem;
}
aside ul li:hover {
background-color:yellowgreen;
}
aside ul li a{
text-decoration:none;
font-size:1.5em;
}
.destacado{
color:yellow;
}
#fotos figure img{
width: 100%;
height: auto;
}
#fotos figure a img{
width: 32px;
position:absolute;
right:5px;
top:5px;
}
#fotos figure{
margin: 20px;
border: 1px solid #ccc;
float: left;
width: 300px;
box-shadow: 10px 10px 5px #AAAAAA;
opacity:.8;
position:relative;
}
#fotos figure:hover{
border: 1px solid #777;
box-shadow: 10px 10px 5px #555555;
opacity:1;
}
#fotos figcaption{
padding: 15px;
text-align: center;
background-color: white;
}

#productos {
font-family: "Trebuchet MS", Arial, Helvetica, sans-serif;
border-collapse: collapse;
width: 100%;
}

#productos td, #productos th {
border: 1px solid #ddd;
padding: 8px;
}

#productos tr:nth-child(even){background-color: #f2f2f2;}

#productos tr:hover {background-color: #ddd;}

#productos th {
padding-top: 12px;
padding-bottom: 12px;
text-align: left;
background-color: #4CAF50;
color: white;
}

nav ul li{
display: inline-block;
padding:10px;
color:white;
}
nav ul{
background-color: grey;
margin:0;
}

 

Vídeo de fondo


<!DOCTYPE html>

<html>
<head>
<title>Vídeo pantalla completa</title>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<style>
video {
position: fixed;
right: 0;
bottom: 0;
min-width: 100%;
min-height: 100%;
}
section {
position: fixed;
bottom: 0;
background: rgba(0, 0, 0, 0.5);
color: #f1f1f1;
width: 100%;
padding: 20px;
}
</style>
</head>
<body>
<video autoplay muted loop>
<source src="img/rain.mp4" type="video/mp4">
El navegador no soporta vídeos.
</video>
<section>
<h1>Contenido</h1>
<p>Lorem ipsum...</p>

</section>
</body>
</html>

Fotos


<!DOCTYPE html>
<html>

<head>
<title></title>
<meta charset="utf-8">
<link rel="stylesheet" type="text/css" href="layout.css">
<link href="https://fonts.googleapis.com/css?family=Carter+One" rel="stylesheet">
</head>

<body>

<header>
<h1>La web de los gatitos </h1>
</header>

<main>

<aside>
<ul>
<li><a href="index.html">Inicio</a></li>
<li><a href="fotos.html">Fotos</a></li>
<li><a href="fotos.html">Productos</a></li>
<li><a href="fotos.html">Tienda</a></li>
</ul>
</aside>

<section>

<h2>Fotos tiernas</h2>
<figure>
<img src="img/gato.jpg" alt=""/>
<figcaption>Un lindo gatito</figcaption>
</figure>
<figure>
<img src="img/mascota.jpg" alt=""/>
<figcaption>Amor a los animales</figcaption>
</figure>
<figure>
<img src="img/perro2.jpg" alt=""/>
<figcaption>El mejor amigo del hombre</figcaption>
</figure>

</section>

</main>
<footer>
<p>(c) Netmind</p>
</footer>
</body>
</html>

*{
font-family:Verdana,serif;
}
header,aside,section,footer{
padding:1rem;
}
header{
height:10rem;
background-color:lightgreen;
}
aside{
width:15rem;
height:40rem;
background-color:#fae596;
float:left;
}
section{
margin-left:17rem;
background-color:#BBBBBB;
min-height:40rem;
padding:1rem 10rem;
}
footer{
height:3rem;
background-color:black;
color:white;
}

header h1{
font-family: 'Carter One', cursive;
font-size:5rem;
margin:0;
}
aside ul{
list-style-type:none;
padding:0;
}

aside ul li {
padding: 8px 16px;
border: 1px solid #ddd;
background-color:PowderBlue ;
margin-top:.5rem;
}
aside ul li:hover {
background-color:yellowgreen;
}
aside ul li a{
text-decoration:none;
font-size:1.5em;
}
.destacado{
color:yellow;
}
figure img{
width: 100%;
height: auto;
}
figure{
margin: 20px;
border: 1px solid #ccc;
float: left;
width: 300px;
box-shadow: 10px 10px 5px #AAAAAA;
}
figure:hover{
border: 1px solid #777;
box-shadow: 10px 10px 5px #555555;
}
figcaption{
padding: 15px;
text-align: center;
background-color: white;
}

Layout Semántico


<!DOCTYPE html>
<html>

<head>
<title></title>

<link rel="stylesheet" type="text/css" href="layout.css">
<link href="https://fonts.googleapis.com/css?family=Carter+One" rel="stylesheet">
</head>

<body>

<header>
<h1>La web de los gatitos</h1>
</header>

<main>

<aside>
<ul>
<li><a href="fotos.html">Fotos</a></li>
<li><a href="fotos.html">Productos</a></li>
<li><a href="fotos.html">Tienda</a></li>
</ul>
</aside>

<section>
<h2>Bienvenido a la web de los gatitos</h2>
<p>Lorem ipsum dolor sit amet, consectetur adipiscing elit,
sed do eiusmod tempor incididunt ut labore et dolore magna aliqua.
Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi
ut aliquip ex ea commodo consequat. Duis aute irure dolor in reprehenderit in
voluptate velit esse cillum dolore eu fugiat nulla pariatur. Excepteur sint
occaecat cupidatat non proident, sunt in culpa qui officia deserunt mollit anim id est laborum.</p>
<img src="gato.jpg" alt="gato">
</section>

</main>
<footer>
<p>(c) Netmind</p>
</footer>
</body>
</html>


*{
font-family:Verdana,serif;
}
header,aside,section,footer{
padding:1rem;
}
header{
height:10rem;
background-color:lightgreen;
}
aside{
width:15rem;
height:40rem;
background-color:#fae596;
float:left;
}
section{
margin-left:17rem;
background-color:#BBBBBB;
min-height:40rem;
padding:1rem 10rem;
}
footer{
height:3rem;
background-color:black;
color:white;
}

header h1{
font-family: 'Carter One', cursive;
font-size:5rem;
margin:0;
}
aside ul{
list-style-type:none;
padding:0;
}

aside ul li {
padding: 8px 16px;
border: 1px solid #ddd;
background-color:PowderBlue ;
margin-top:.5rem;
}
aside ul li:hover {
background-color:yellowgreen ;

}
aside ul li a{
text-decoration:none;
font-size:1.5em;
}

Tabla con formato

table{
border:2px solid grey;
width:100%;

}
th, tfoot{
background-color:black;
color:yellow;
}
.ciudad{
background-color:lightgreen;
}
.pares{
background-color:#BBBBBB;
}

<table>
<tr>
<th colspan="3">Ventas</th>
</tr>
<tr>
<td rowspan="2" class="ciudad">BCN</td>
<td >Ana</td>
<td>10</td>
</tr>
<tr class="pares">
<td>Rosa</td>
<td>20</td>
</tr>
<tr>
<td rowspan="2" class="ciudad">GIR</td>
<td >Juan</td>
<td>30</td>
</tr>
<tr class="pares">
<td>Eva</td>
<td>40</td>
</tr>
<tfoot>
<tr>
<td colspan="2">Total</td>
<td>100</td>
</tr>
</tfoot>
</table>