zoukankan      html  css  js  c++  java
  • input 联动效果灵活运用 二级菜单 同类型筛选(电影排名) 纯CSS3

    input 联动效果

      input舍弃了输入框,感觉好“好玩”!

    二级菜单

      贴个我以前做的效果图,一般PC端多用鼠标移入:hover出现二级菜单,input通过鼠标点击出现,PC端和移动端(移动端木有鼠标...)都适用

    HTML代码如下:

     1  <header>
     2         <nav>
     3             <input type="checkbox" id="area" class="first">
     4             <p>成都</p>
     5             <div>
     6                 <p>定位城市:<a href="#">成都</a></p>
     7                 <ul>
     8                     <li>
     9                         <span>A</span>
    10                         <ol>
    11                             <li><a href="#">Lorem.</a></li>
    12                             <li><a href="#">Pariatur.</a></li>
    13                             <li><a href="#">Tempora?</a></li>
    14                             <li><a href="#">Ratione.</a></li>
    15                             <li><a href="#">Unde?</a></li>
    16                             <li><a href="#">Vero.</a></li>
    17 
    18                         </ol>
    19                     </li>
    20                     <li><span>B</span>
    21                         <ol>
    22                             <li><a href="#">Facilis.</a></li>
    23                             <li><a href="#">Optio!</a></li>
    24                             <li><a href="#">Vitae.</a></li>
    25                             <li><a href="#">Asperiores.</a></li>
    26                             <li><a href="#">Asperiores!</a></li>
    27                             <li><a href="#">Reiciendis?</a></li>
    28                             <li><a href="#">Velit.</a></li>
    29 
    30                         </ol>
    31                     </li>
    32                     <li><span>C</span>
    33                         <ol>
    34                             <li><a href="#">Ratione.</a></li>
    35                             <li><a href="#">Odio.</a></li>
    36                             <li><a href="#">Enim.</a></li>
    37                             <li><a href="#">Qui?</a></li>
    38                             <li><a href="#">Non?</a></li>
    39                             <li><a href="#">Sint.</a></li>
    40 
    41                         </ol>
    42                     </li>
    43                     <li><span>D</span>
    44                         <ol>
    45                             <li><a href="#">Voluptates.</a></li>
    46                             <li><a href="#">Dolor.</a></li>
    47                             <li><a href="#">Cumque.</a></li>
    48                             <li><a href="#">Veritatis.</a></li>
    49                             <li><a href="#">Perspiciatis.</a></li>
    50                             <li><a href="#">Facere?</a></li>
    51                             <li><a href="#">Expedita.</a></li>
    52                             <li><a href="#">Reprehenderit!</a></li>
    53 
    54                         </ol>
    55                     </li>
    56                     <li><span>D</span>
    57                         <ol>
    58                             <li><a href="#">Voluptates.</a></li>
    59                             <li><a href="#">Dolor.</a></li>
    60                             <li><a href="#">Cumque.</a></li>
    61                             <li><a href="#">Veritatis.</a></li>
    62                             <li><a href="#">Perspiciatis.</a></li>
    63                             <li><a href="#">Facere?</a></li>
    64                             <li><a href="#">Expedita.</a></li>
    65 
    66                         </ol>
    67                     </li>
    68                     <li><span>D</span>
    69                         <ol>
    70                             <li><a href="#">Voluptates.</a></li>
    71                             <li><a href="#">Dolor.</a></li>
    72                             <li><a href="#">Cumque.</a></li>
    73                             <li><a href="#">Veritatis.</a></li>
    74                             <li><a href="#">Perspiciatis.</a></li>
    75                             <li><a href="#">Facere?</a></li>
    76                             <li><a href="#">Expedita.</a></li>
    77                             <li><a href="#">Reprehenderit!</a></li>
    78 
    79                         </ol>
    80                     </li>
    81                 </ul>
    82             </div>
    83             <label for="area">
    84                 <img src="./IMG/area.png" alt="小三角">
    85             </label>
    86         </nav>
    87     </header>

    CSS代码如下:

      1 /* 去除滚动条样式(不会影响滚动功能) */
      2         ::-webkit-scrollbar {
      3             display: none;
      4         }
      5 
      6         /* 大小变化+透明度变化(二级菜单) */
      7         @keyframes mineopa {
      8             0% {
      9                 transform: scale(0.1);
     10                 opacity: 0;
     11             }
     12 
     13             50% {
     14                 transform: scale(1.2);
     15                 opacity: 1;
     16             }
     17 
     18             100% {
     19                 transform: scale(1);
     20                 opacity: 0;
     21             }
     22         }
     23         /* 大小变化+颜色变化(选中地域:成都)*/
     24         @keyframes minescale {
     25             0% {
     26                 transform: scale(1);
     27                 color: pink;
     28             }
     29 
     30             50% {
     31                 transform: scale(1.5);
     32                 color: deeppink;
     33             }
     34 
     35             100% {
     36                 transform: scale(1);
     37                 color: khaki;
     38             }
     39         }
     40         /* 一些默认样式清除 */
     41         body ul {
     42             margin: 0rem;
     43             padding: 0rem;
     44         }
     45 
     46         body ol {
     47             margin: 0rem;
     48             padding: 0rem;
     49         }
     50 
     51         body li {
     52             list-style: none;
     53         }
     54 
     55         body p {
     56             margin: 0rem;
     57         }
     58 
     59         body a {
     60             text-decoration: none;
     61         }
     62         /* 导航样式 */
     63         body header nav {
     64             display: flex;
     65             align-items: center;
     66             width: 1200px;
     67             height: 80px;
     68             margin: auto;
     69             position: relative;
     70             font-size: 20px;
     71         }
     72         /* 隐藏复选框默认样式 */
     73         body header nav .first {
     74             display: none;
     75         }
     76         /* 小图标大小 */
     77         body header nav label img {
     78             width: 14px;
     79             height: 8px;
     80             margin-bottom: 2px;
     81             transition: all linear 0.5s;
     82         }
     83         /* 选中时,成都字样变化 */
     84         body header nav input:checked+p {
     85             animation: minescale linear 1s infinite;
     86         }
     87         /* 选中时,小图标变化 */
     88         body header nav input:checked~label>img {
     89             transform: rotate(-180deg);
     90         }
     91         /* 选中时,二级菜单运用动画出现 */
     92         body header nav input:checked~div {
     93             display: block;
     94             animation: mineopa linear 3s 1;
     95         }
     96         /* 二级菜单位置 */
     97         body header nav div {
     98             display: none;
     99             font-size: 15px;
    100             position: absolute;
    101             top: 78px;
    102             left: 150px;
    103             background-color: #fff;
    104             overflow-y: scroll;
    105         }
    106 
    107         body header nav div p {
    108             padding: 20px;
    109             border-top: 1px solid gray;
    110             margin-left: 50px;
    111         }
    112 
    113         body header nav div p a {
    114             color: deeppink;
    115         }
    116 
    117         body header nav div ul {
    118             border-top: 1px solid gray;
    119             height: 200px;
    120         }
    121 
    122         body header nav div ul>li {
    123             display: flex;
    124         }
    125         /* A B C D 样式 */
    126         body header nav div ul>li span {
    127             color: purple;
    128             margin: 10px;
    129             padding: 4px;
    130             height: 20px;
    131             border-radius: 1px;
    132             background-color: pink;
    133         }
    134 
    135         body header nav div ul>li ol {
    136             width: 435px;
    137             display: flex;
    138             flex-wrap: wrap;
    139         }
    140         /* 间隔调整 */
    141         body header nav div ul>li ol li {
    142             margin: 10px;
    143         }
    144         /* a链接颜色 */
    145         body header nav div ul>li ol li a {
    146             color: darkcyan;
    147         }
    148         /* a链接hover变化 */
    149         body header nav div ul>li ol li a:hover {
    150             background-color: yellow;
    151             color: red;
    152         }

    同类型筛选(电影排名)

    效果如下:

      思路:

        1、要实现内容切换,使用单选框(此处写了三个单选框)。

        2、把要筛选的所有内容分类(每一类取相同的类名),每个单选框“关联”一个类

        3、input:checked  可以选中它本身以下的所有兄弟元素及兄弟元素的后代元素。

          注:input:checked .类名{},就全选中了。

  • 相关阅读:
    C/C++,彩色图像小游戏。
    js 调用百度地图,并且定位用户地址,显示省市区街,经纬度
    C/C++ 双精度double 数据相加出错缺陷解释
    辗转相除法求最大公约数,非goto
    如何用 js 获取table 或者其他块状标签的 宽和高
    如何用 ajax 连接mysql数据库,并且获取从中返回的数据。ajax获取从mysql返回的数据。responseXML分别输出不同数据的方法。
    C++ 连接数据库的入口和获取列数、数据
    Win10:如何修改双网卡的优先级?
    如何拉动内需,击中客户深层需求,4个经典案例分析!
    单点登录SSO简介
  • 原文地址:https://www.cnblogs.com/jiayouba/p/11826670.html
Copyright © 2011-2022 走看看