Maison > interface Web > tutoriel CSS > Exemple de partage de code sur la façon d'utiliser CSS3+JS pour dessiner divers boutons

Exemple de partage de code sur la façon d'utiliser CSS3+JS pour dessiner divers boutons

黄舟
Libérer: 2017-06-18 13:27:29
original
1893 Les gens l'ont consulté

Je pense qu'il y a trois étapes pour dessiner un bouton

  • La première étape consiste à dessiner le contour du bouton

    • Choisissez la bonne balise HTML, définissez le contour CSS

/* html代码 */
<a href="#" class="button off"></a>
body{
    background-color: #E6C9B6;
}

/* CSS样式 */
/* 按钮轮廓 */
.button{
    display: block;
    margin:100px auto;
    position: relative;
    width:100px;
    height:40px;
    border-radius: 50px;
    border:1px solid #fff;
    background-color: #E9E4E0;
}
Copier après la connexion

Rendu


Imiter IOS -1 .jpg

  • La deuxième étape consiste à dessiner l'état par défaut du bouton

    • Cette étape est très importante car nous ne donnera plus de HTML Le fichier ajoute d'autres balises, nous devons donc utiliser la pseudo-classe :after pour rendre le bouton avec CSS

      /* 接在上面继续写 */
      .button:after{
         display: block;
         position: absolute;    //相对按钮的轮廓进行决定定位
         top:2px;
         bottom: 2px;        //即设置top,又设置bottom使元素自动拉伸到最大
         left:2px;           //实际上,按钮的宽度即为容器的高度-(top+bottom)
         width:36px;           //按钮的宽度
         line-height: 36px;    //按钮文字的高度,如果不需要文字,可移除
         text-align: center;
         text-transform: uppercase;
         font-size: 16px;
         background-color: #fff;      //这里的背景颜色是按钮的背景颜色
         border:2px solid;
         transition: all 500ms;        //按钮的动画时长
      }
      Copier après la connexion

      En fait, après avoir fait cette étape, vous constaterez que le l'effet sur le navigateur ne change pas du tout, ou alors C'est pareil qu'avant, mais ne vous inquiétez pas, ce sera évident si on ajoute un petit quelque chose

    • Ajouter un petit bouton à l'intérieur le contour

      .off:after {
         content: &#39;off&#39;;
         border-radius:30px;
         color: #999;
      }
      Copier après la connexion

      La valeur par défaut est désactivée


Imiter IOS-2.jpg

- 再接着绘制要切换的状态
Copier après la connexion
.on:after {
          content: &#39;ON&#39;;
          border-radius:30px;
          transform: translate(56px, 0);   
          color:transparent;
          background-color:#4BD429;
        }
Copier après la connexion


Imitez IOS-3.jpg

  • La dernière étape consiste à écrire du code JS pour basculer

    En fait, dans la commutation CSS, toggleClass est le plus pratique.
    Mais ! ! !
    Cette méthode de commutation ne peut pas changer l'événement JS que vous souhaitez déclencher.
    Après tout, nous dessinons des boutons pour remplir certaines fonctions
    J'ai donc adopté cette méthode, mais ce n'est peut-être pas la meilleure.

    var zn=0;
    $(&#39;.button&#39;).click(function(e){
      if(zn==1){
          $(this).removeClass("on").addClass("off");
          //此处可填要触发的事件
          zn=0;
      }else{
          $(this).removeClass("off").addClass("on");
           //此处可填要触发的事件
          zn=1;
      }
    });
    Copier après la connexion
    À ce stade, un bouton d'interrupteur complet est dessiné

    Merci d'avoir consacré 3 à 5 minutes à lire mon tutoriel non professionnel

PS : Hier, j'allais pour dessiner un bouton pour contrôler l'interrupteur de l'ampoule (en fait, changer l'image d'arrière-plan), puis j'ai regardé autour de moi et j'ai vu un interrupteur en forme de taureau sur le mur, puisqu'il contrôle la lumière, j'ai voulu jouer avec la simulation de l'interrupteur, durable. la somnolence à midi, était vraiment difficile à dessiner
  绘制过程并不复杂,我也就不细说了,贴下效果图和代码,感兴趣的可以自行看一下
Copier après la connexion


Simulation switch.jpg


Simulation-2.jpg

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