Nessun risultato. Prova con un altro termine.
Guide
Notizie
Software
Tutorial

Un menu fisheye CSS con immagini

Link copiato negli appunti

Realizzare un menu fisheye con i CSS non è difficile. Possiamo tuttavia aggiungere un ulteriore effetto grafico usando delle immagini
di sfondo.

Partiamo da una struttura come questa:

Utilizziamo degli ID diversi su ciascun link perché ciascuna voce avrà  un'immagine di sfondo diversa.

Passiamo quindi a dare degli stili CSS:

body {
    width: 60%;
    margin: 0 auto;
    padding: 2em 0;
    background: #fff;
    color: #333;
    font: 76% Arial, sans-serif;
}
#navigation {
    width: 100%;
    font-size: 1.1em; /* 1em = 13px */
    height: 100%;
    overflow: hidden;
    margin: 0;
    padding: 0;
    list-style: none;
}
#navigation li {
    float: left;
    height: 100%;
    margin-right: 4px;
}
#navigation li a {
    float: left;
    display: block;
    padding: 0 10px;
    font-size: 1.2em;
    color: #555;
    font-weight: bold;
    text-decoration: none;
    background-color: transparent;
    background-repeat: no-repeat;
    background-position: 50% 0;
    height: 100%;
    line-height: 5;
}
#navigation li a#home {
    background-image: url("img/home-small.jpg");
}
#navigation li a#home:hover {
    background-image: url("img/home-big.jpg");
    line-height: 7;
}
#navigation li a#images {
    background-image: url("img/images-small.jpg");
}
#navigation li a#images:hover {
    background-image: url("img/images-big.jpg");
    line-height: 7;
}
#navigation li a#about {
    background-image: url("img/about-small.jpg");
}
#navigation li a#about:hover {
    background-image: url("img/about-big.jpg");
    line-height: 7;
}
#navigation li a#contact {
    background-image: url("img/contact-small.jpg");
}
#navigation li a#contact:hover {
    background-image: url("img/contact-big.jpg");
    line-height: 7;
}

Dato che usiamo il float per allineare le voci, usiamo overflow: hidden height: 100% dare layout
Ciascun link avrà  una dimensione del font maggiore e una line-height background-position: 50% 0

L'esempio finale

Ti consigliamo anche