Maison > interface Web > Tutoriel H5 > Comment créer une barre de navigation en trois dimensions avec CSS

Comment créer une barre de navigation en trois dimensions avec CSS

一个新手
Libérer: 2017-10-16 10:57:10
original
1618 Les gens l'ont consulté


<!doctype html><html lang="en">
    <head>
        <meta charset="UTF-8">
        <title>CSS制作立体导航</title>
        <link rel="stylesheet" href="http://www.w3cplus.com/demo/css3/base.css">
        <style>
            body{
              background: #ebebeb;
            }
            .nav{
              width:560px;
              height: 50px;
              font:bold 0/50px Arial;
              text-align:center;
              margin:40px auto 0;
              background: #f65f57;
             /*制作导航圆角*/
              border-radius: 8px;
             /*制作导航立体效果*/
              box-shadow: 0 7px 0 #ba4a45;
            }
            .nav a{
              display: inline-block;
              /* a元素的过渡属性:1、设置所有a标签过渡;2、过渡时间;3、速度曲线:以慢速开始的过渡效果 */
                -webkit-transition: all 0.2s ease-in;/* Safari 和 Chrome */
                -moz-transition: all 0.2s ease-in;/* Firefox */
               -o-transition: all 0.2s ease-in;/* Opera */
               -ms-transition: all 0.2s ease-in;/* IE 9 */
               transition: all 0.2s ease-in;
            }
            .nav a:hover{
                /* 鼠标移上时的效果;定义2D旋转10度 */
              -webkit-transform:rotate(10deg);
              -moz-transform:rotate(10deg);
              -o-transform:rotate(10deg);
              -ms-transform:rotate(10deg);
              transform:rotate(10deg);
            }

            .nav li{
              position:relative;
              display:inline-block;
              padding:0 16px;
              font-size: 14px;
              text-shadow:1px 2px 4px rgba(0,0,0,.5);
              list-style: none outside none;
            }
            /*制作导航分隔线效果*/
            .nav li::before,
            .nav li::after{
              content:"";
              position:absolute;
              top:14px;
              height: 25px;
              width: 1px;
            }
            .nav li::after{
              right: 0;
              /* 线性渐变 */
              background: -moz-linear-gradient(top, rgba(255,255,255,0), rgba(255,255,255,.2) 50%, rgba(255,255,255,0));
              background: -webkit-linear-gradient(top, rgba(255,255,255,0), rgba(255,255,255,.2) 50%, rgba(255,255,255,0));
              background: -o-linear-gradient(top, rgba(255,255,255,0), rgba(255,255,255,.2) 50%, rgba(255,255,255,0));
              background: -ms-linear-gradient(top, rgba(255,255,255,0), rgba(255,255,255,.2) 50%, rgba(255,255,255,0));
              background: linear-gradient(top, rgba(255,255,255,0), rgba(255,255,255,.2) 50%, rgba(255,255,255,0));
            }
            .nav li::before{
              left: 0;
              background: -moz-linear-gradient(top, #ff625a, #9e3e3a 50%, #ff625a);
              background: -webkit-linear-gradient(top, #ff625a, #9e3e3a 50%, #ff625a);
              background: -o-linear-gradient(top, #ff625a, #9e3e3a 50%, #ff625a);
              background: -ms-linear-gradient(top, #ff625a, #9e3e3a 50%, #ff625a);
              background: linear-gradient(top, #ff625a, #9e3e3a 50%, #ff625a);
            }
            /*删除导航第一个导航项左边的分隔线*/
            .nav li:first-child::before{
              background: none;
            }
            /*删除导航最后一个导航右边的分隔线*/
            .nav li:last-child::after{
              background: none;
            }
            .nav a,
            .nav a:hover{
              color:#fff;
              text-decoration: none;
            }

        </style>
    </head>
    <body>
        <ul class="nav">
        <li><a href="">首页</a></li>
        <li><a href="">个人简介</a></li>
        <li><a href="">作品集</a></li>
        <li><a href="">博客</a></li>
        <li><a href="">资源</a></li>
        <li><a href="">联系我</a></li>
        </ul>
    </body></html>
Copier après la connexion

Rendu :

1

2

Résumé :

1. Utiliser une liste non ordonnée pour la partie du corps

2. (1) survol

L'effet lorsque la souris est déplacée vers le haut.

 (2) QuestionLa différence entre ::avant et :avant

En termes simples, seul le deux-points (:) est utilisé pour les pseudo-classes CSS3 et le double deux-points (::) est utilisé pour les pseudo-éléments CSS3.

  spécification w3c sur les sélecteurs css :

Un pseudo-élément est composé de deux deux-points (::) suivis du nom du pseudo-élément.

Ce :: la notation est introduite par le document actuel afin d'établir une discrimination entre pseudo-classes et pseudo-éléments Pour des raisons de compatibilité avec les feuilles de style existantes, les agents utilisateurs doivent également accepter la notation précédente à un deux-points pour les pseudo-éléments introduite dans les niveaux CSS. 1 et 2 (à savoir, :first-line, :first-letter, :before et :after Cette compatibilité n'est pas autorisée pour les nouveaux pseudo-éléments introduits dans le niveau CSS 3.

  Traduction simple : les pseudo-éléments sont constitués de doubles deux-points et du nom du pseudo-élément. Le double deux-points a été introduit dans la spécification actuelle pour distinguer les pseudo-classes des pseudo-éléments. Cependant, le navigateur doit prendre en charge en même temps les anciennes méthodes d'écriture de pseudo-éléments existantes, telles que : first-line, :first-letter, :before, :after, etc., tandis que les nouveaux pseudo-éléments introduits dans CSS3 ne sont pas autorisés 🎜>L'ancienne méthode d'écriture avec deux points simples est désormais prise en charge.  Vous pouvez désormais répondre entièrement à la question dans le titre. Pour les pseudo-éléments qui existaient avant CSS2, comme :before, les deux points simples et doubles s'écrivent de la même manière ::before

a le même effet

.

Par conséquent, si votre site Web

doit seulement être

compatible avec webkit, firefox, opera et autres navigateurs, il est recommandé d'utiliser l'écriture à deux points pour les pseudo-éléments. S'il doit être compatible avec le navigateur IE, il est plus sûr d'utiliser la méthode d'écriture CSS2 à deux points.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Étiquettes associées:
source:php.cn
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal