CSS3 and html js 实现飞行标签导航条实现飞行标签效果-网站设计cid1088

  1. <!DOCTYPE html>
  2. <html lang="en">
  3. <head>
  4. <meta charset="UTF-8">
  5. <title>flying effect</title>
  6. <link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/font-awesome/4.7.0/css/font-awesome.min.css">
  7. <link href="https://fonts.googleapis.com/css?family=Roboto+Condensed:300,300i,400,400i,700i" rel="stylesheet">
  8. <script
  9. src="https://code.jquery.com/jquery-3.3.1.js"
  10. ></script>
  11. <style>
  12. body {
  13. background-image: url(photo1.jpg);
  14. background-size: cover;
  15. font-family: 'Roboto Condensed', sans-serif;
  16. overflow: hidden;
  17. }
  18. h1 {
  19. margin: 0;
  20. font-size: 22px;
  21. line-height: 1;
  22. color: #423e37;
  23. }
  24. .page {
  25. width: 100vw;
  26. height: 100vh;
  27. min-height: 700px;
  28. overflow: hidden;
  29. margin-left: -25px;
  30. margin-top: 45px;
  31. }
  32. .tabs-controls {
  33. position: relative;
  34. z-index: 10;
  35. display: flex;
  36. justify-content: center;
  37. align-items: stretch;
  38. width: 100%;
  39. max-width: 800px;
  40. margin: 0 auto;
  41. box-sizing: border-box;
  42. padding: 50px 0 100px;
  43. list-style-type: none;
  44. }
  45. .tabs-controls-link {
  46. position: relative;
  47. display: block;
  48. padding: 16px 32px;
  49. font-size: 18px;
  50. font-weight: 700;
  51. color: white;
  52. text-transform: uppercase;
  53. text-decoration: none;
  54. }
  55. .tabs-controls-link:after {
  56. position: absolute;
  57. left: 0;
  58. right: 0;
  59. bottom: 0;
  60. display: block;
  61. width: 0;
  62. height: 4px;
  63. background-color: white;
  64. border-radius: 2px;
  65. margin: auto;
  66. content: '';
  67. transition: width 0.4s;
  68. }
  69. .tabs-controls-link-active:after {
  70. width: 100%;
  71. }
  72. .cards-container {
  73. position: relative;
  74. z-index: 1;
  75. width: 500px;
  76. height: calc(100vh - 205px);
  77. margin: 0 auto;
  78. }
  79. .card {
  80. position: absolute;
  81. width: 500px;
  82. height: 300px;
  83. background-color: #edebd7;
  84. border: 1px solid #423e37;
  85. box-shadow: 9px 11px 3px 0px rgba(0, 0, 0, 0.2);
  86. box-sizing: border-box;
  87. padding: 40px;
  88. transition: transform 0.3s, opacity 0.2s;
  89. }
  90. .card.hidden {
  91. z-index: 100;
  92. background-color: #fff;
  93. color: #fff;
  94. opacity: 0;
  95. transition: color 0.5s, background-color 0.5s, transform 1s, opacity 0.2s 0.4s;
  96. }
  97. .card.hidden h1 {
  98. color: #fff;
  99. transition: color 0.5s;
  100. }
  101. .card.hidden:nth-of-type(1) {
  102. transform: rotate(-61deg) translateX(101%) translateY(-42%) scale(0.7) skewX(3deg) skewY(5deg);
  103. }
  104. .card.hidden:nth-of-type(2) {
  105. transform: rotate(-20deg) translateX(101%) translateY(-30%) scale(0.6) skewX(6deg) skewY(12deg);
  106. }
  107. .card.hidden:nth-of-type(3) {
  108. transform: rotate(-89deg) translateX(101%) translateY(-41%) scale(1) skewX(4deg) skewY(1deg);
  109. }
  110. .card.hidden:nth-of-type(4) {
  111. transform: rotate(-88deg) translateX(101%) translateY(-26%) scale(0.5) skewX(9deg) skewY(11deg);
  112. }
  113. .card.hidden:nth-of-type(5) {
  114. transform: rotate(-80deg) translateX(101%) translateY(-40%) scale(0.6) skewX(12deg) skewY(5deg);
  115. }
  116. .card.hidden:nth-of-type(6) {
  117. transform: rotate(-85deg) translateX(101%) translateY(-21%) scale(0.3) skewX(12deg) skewY(7deg);
  118. }
  119. .card:nth-of-type(1) {
  120. z-index: 5;
  121. transform: translateX(0px) translateY(0px);
  122. }
  123. .card:nth-of-type(2) {
  124. z-index: 4;
  125. transform: translateX(10px) translateY(10px);
  126. }
  127. .card:nth-of-type(3) {
  128. z-index: 3;
  129. transform: translateX(20px) translateY(20px);
  130. }
  131. .card:nth-of-type(4) {
  132. z-index: 2;
  133. transform: translateX(30px) translateY(30px);
  134. }
  135. .card:nth-of-type(5) {
  136. z-index: 1;
  137. transform: translateX(40px) translateY(40px);
  138. }
  139. .card:nth-of-type(6) {
  140. z-index: 0;
  141. transform: translateX(50px) translateY(50px);
  142. }
  143. .social .fa{
  144. background-image: url(photo1.jpg);
  145. background-size: cover;
  146. width: 35px;
  147. height: 35px;
  148. color: white;
  149. text-align: center;
  150. line-height: 35px;
  151. margin-top: 20px;
  152. }
  153. </style>
  154. </head>
  155. <body>
  156. <section class="page">
  157. <section>
  158. <ul class="tabs-controls">
  159. <li class="tabs-controlsitem">
  160. <a href="#" class="tabs-controls-link tabs-controls-link-active" data-id="1">
  161. HOME
  162. </a>
  163. </li>
  164. <li class="tabs-controls-item">
  165. <a href="#" class="tabs-controls-link" data-id="2">
  166. GALLERY
  167. </a>
  168. </li>
  169. <li class="tabs-controls-item">
  170. <a href="#" class="tabs-controls-link" data-id="3">
  171. TEAM
  172. </a>
  173. </li>
  174. <li class="tabs-controls-item">
  175. <a href="#" class="tabs-controls-link" data-id="4">
  176. TESTMONIAL
  177. </a>
  178. </li>
  179. <li class="tabs-controls-item">
  180. <a href="#" class="tabs-controls-link" data-id="5">
  181. FAQ
  182. </a>
  183. </li>
  184. <li class="tabs-controls-item">
  185. <a href="#" class="tabs-controls-link" data-id="6">
  186. LOCATION
  187. </a>
  188. </li>
  189. </ul>
  190. </section>
  191. <section class="cards-container">
  192. <div class="card card-current" id="1">
  193. <h1>HOME</h1>
  194. <br>
  195. <p>
  196. Lorem ipsum dolor sit amet, consectetur adipisicing elit, sed do eiusmod
  197. tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam,
  198. quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo
  199. consequat.
  200. </p>
  201. <div class="social">
  202. <i class="fa fa-facebook"></i>
  203. <i class="fa fa-twitter"></i>
  204. <i class="fa fa-linkedin"></i>
  205. <i class="fa fa-youtube"></i>
  206. </div>
  207. </div>
  208. <div class="card" id="2">
  209. <h1>GALLERY</h1>
  210. <br>
  211. <p>
  212. Elit, sed do eiusmod
  213. tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam,
  214. quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo
  215. consequat.
  216. </p>
  217. <div class="social">
  218. <i class="fa fa-facebook"></i>
  219. <i class="fa fa-twitter"></i>
  220. <i class="fa fa-linkedin"></i>
  221. <i class="fa fa-youtube"></i>
  222. </div>
  223. </div>
  224. <div class="card" id="3">
  225. <h1>TEAM</h1>
  226. <br>
  227. <p>
  228. Consectetur adipisicing elit, sed do eiusmod
  229. tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam,
  230. quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo
  231. consequat.
  232. </p>
  233. <div class="social">
  234. <i class="fa fa-facebook"></i>
  235. <i class="fa fa-twitter"></i>
  236. <i class="fa fa-linkedin"></i>
  237. <i class="fa fa-youtube"></i>
  238. </div>
  239. </div>
  240. <div class="card" id="4">
  241. <h1>TESTIMONIAL</h1>
  242. <br>
  243. <p>
  244. Sed do eiusmod
  245. tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam,
  246. quis nostrcaecat cupidatat nonv proident, sunt in culpa qui officia deserunt mollit anim id est laborum.
  247. </p>
  248. <div class="social">
  249. <i class="fa fa-facebook"></i>
  250. <i class="fa fa-twitter"></i>
  251. <i class="fa fa-linkedin"></i>
  252. <i class="fa fa-youtube"></i>
  253. </div>
  254. </div>
  255. <div class="card" id="5">
  256. <h1>FAQ</h1>
  257. <br>
  258. <p>
  259. Ut enim ad minim veniam,
  260. quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo
  261. consequat. Duis aute irure dolor in reprehenderit in vo cupidatat non
  262. proident, sunt in culpa qui officia deserunt mollit anim id est laborum.
  263. </p>
  264. <div class="social">
  265. <i class="fa fa-facebook"></i>
  266. <i class="fa fa-twitter"></i>
  267. <i class="fa fa-linkedin"></i>
  268. <i class="fa fa-youtube"></i>
  269. </div>
  270. </div>
  271. <div class="card" id="6">
  272. <h1>LOCATION</h1>
  273. <br>
  274. <p>
  275. Labore et dolore magna aliqua. Ut enim ad minim veniam,
  276. quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo
  277. consequat. Duis aute irure dolor in reprehenderit in volupest laborum.
  278. </p>
  279. <div class="social">
  280. <i class="fa fa-facebook"></i>
  281. <i class="fa fa-twitter"></i>
  282. <i class="fa fa-linkedin"></i>
  283. <i class="fa fa-youtube"></i>
  284. </div>
  285. </div>
  286. </section>
  287. </section>
  288. <script>
  289. $(document).ready(function() {
  290. var oldId = null;
  291. $('.tabs-controls-link').click(function(e) {
  292. e.preventDefault();
  293. if ($(this).hasClass('tabs-controls-link-active')) {
  294. return false;
  295. }
  296. var currentId = parseInt($(this).data('id'), 10);
  297. $('.tabs-controls-link-active').removeClass('tabs-controls-link-active');
  298. $(this).addClass('tabs-controls-link-active');
  299. if (currentId < oldId) { // item is hidden
  300. var timing = $('.card.hidden').length * 100;
  301. $('.card').each(function(index) {
  302. if (index > (currentId - 1 ) || index == (currentId - 1)) {
  303. window.setTimeout(function() {
  304. $('.card').eq(index).removeClass('hidden');
  305. }, timing - (index * 100));
  306. }
  307. });
  308. } else {
  309. $('.card').each(function(index) {
  310. if (index < (currentId - 1)) {
  311. window.setTimeout(function() {
  312. $('.card').eq(index).addClass('hidden');
  313. }, index * 100);
  314. }
  315. });
  316. }
  317. oldId = currentId;
  318. });
  319. });
  320. </script>
  321. </body>
  322. </html>
<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>flying effect</title>
          
     
    <link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/font-awesome/4.7.0/css/font-awesome.min.css">

    <link href="https://fonts.googleapis.com/css?family=Roboto+Condensed:300,300i,400,400i,700i" rel="stylesheet">
    <script
  src="https://code.jquery.com/jquery-3.3.1.js"
   ></script>
    <style>
     
body {
  background-image: url(photo1.jpg);
    background-size: cover;
  font-family: 'Roboto Condensed', sans-serif;
    overflow: hidden;
}
h1 {
  margin: 0;
  font-size: 22px;
  line-height: 1;
  color: #423e37;
}
.page {
  width: 100vw;
  height: 100vh;
  min-height: 700px;
  overflow: hidden;
    margin-left: -25px;
    margin-top: 45px;
}
.tabs-controls {
  position: relative;
  z-index: 10;
  display: flex;
  justify-content: center;
  align-items: stretch;
  width: 100%;
  max-width: 800px;
  margin: 0 auto;
  box-sizing: border-box;
  padding: 50px 0 100px;
  list-style-type: none;
}
.tabs-controls-link {
  position: relative;
  display: block;
  padding: 16px 32px;
  font-size: 18px;
  font-weight: 700;
  color: white;
  text-transform: uppercase;
  text-decoration: none;
}
.tabs-controls-link:after {
  position: absolute;
  left: 0;
  right: 0;
  bottom: 0;
  display: block;
  width: 0;
  height: 4px;
  background-color: white;
  border-radius: 2px;
  margin: auto;
  content: '';
  transition: width 0.4s;
}
.tabs-controls-link-active:after {
  width: 100%;
}
.cards-container {
  position: relative;
  z-index: 1;
  width: 500px;
  height: calc(100vh - 205px);
  margin: 0 auto;
}
.card {
  position: absolute;
  width: 500px;
  height: 300px;
  background-color: #edebd7;
  border: 1px solid #423e37;
  box-shadow: 9px 11px 3px 0px rgba(0, 0, 0, 0.2);
  box-sizing: border-box;
  padding: 40px;
  transition: transform 0.3s, opacity 0.2s;
}
.card.hidden {
  z-index: 100;
  background-color: #fff;
  color: #fff;
  opacity: 0;
  transition: color 0.5s, background-color 0.5s, transform 1s, opacity 0.2s 0.4s;
}
.card.hidden h1 {
  color: #fff;
  transition: color 0.5s;
}
.card.hidden:nth-of-type(1) {
  transform: rotate(-61deg) translateX(101%) translateY(-42%) scale(0.7) skewX(3deg) skewY(5deg);
}
.card.hidden:nth-of-type(2) {
  transform: rotate(-20deg) translateX(101%) translateY(-30%) scale(0.6) skewX(6deg) skewY(12deg);
}
.card.hidden:nth-of-type(3) {
  transform: rotate(-89deg) translateX(101%) translateY(-41%) scale(1) skewX(4deg) skewY(1deg);
}
.card.hidden:nth-of-type(4) {
  transform: rotate(-88deg) translateX(101%) translateY(-26%) scale(0.5) skewX(9deg) skewY(11deg);
}
.card.hidden:nth-of-type(5) {
  transform: rotate(-80deg) translateX(101%) translateY(-40%) scale(0.6) skewX(12deg) skewY(5deg);
}
.card.hidden:nth-of-type(6) {
  transform: rotate(-85deg) translateX(101%) translateY(-21%) scale(0.3) skewX(12deg) skewY(7deg);
}
.card:nth-of-type(1) {
  z-index: 5;
  transform: translateX(0px) translateY(0px);
}
.card:nth-of-type(2) {
  z-index: 4;
  transform: translateX(10px) translateY(10px);
}
.card:nth-of-type(3) {
  z-index: 3;
  transform: translateX(20px) translateY(20px);
}
.card:nth-of-type(4) {
  z-index: 2;
  transform: translateX(30px) translateY(30px);
}
.card:nth-of-type(5) {
  z-index: 1;
  transform: translateX(40px) translateY(40px);
}
.card:nth-of-type(6) {
  z-index: 0;
  transform: translateX(50px) translateY(50px);
}

        .social .fa{
           background-image: url(photo1.jpg);
            background-size: cover;
            width: 35px;
            height: 35px;
            color: white;
            text-align: center;
            line-height: 35px;
            margin-top: 20px;
        }
    </style>
</head>
<body>
    <section class="page">
  <section>
    <ul class="tabs-controls">
      <li class="tabs-controlsitem">
        <a href="#" class="tabs-controls-link tabs-controls-link-active" data-id="1">
          HOME
        </a>
      </li>
      <li class="tabs-controls-item">
        <a href="#" class="tabs-controls-link" data-id="2">
          GALLERY
        </a>
      </li>
      <li class="tabs-controls-item">
        <a href="#" class="tabs-controls-link" data-id="3">
          TEAM
        </a>
      </li>
      <li class="tabs-controls-item">
        <a href="#" class="tabs-controls-link" data-id="4">
          TESTMONIAL
        </a>
      </li>
      <li class="tabs-controls-item">
        <a href="#" class="tabs-controls-link" data-id="5">
          FAQ
        </a>
      </li>
      <li class="tabs-controls-item">
        <a href="#" class="tabs-controls-link" data-id="6">
          LOCATION
        </a>
      </li>
    </ul>
  </section>
  <section class="cards-container">
    <div class="card card-current" id="1">
      <h1>HOME</h1>
      <br>
      <p>
        Lorem ipsum dolor sit amet, consectetur adipisicing 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.
      </p>
      <div class="social">
          <i class="fa fa-facebook"></i>
          <i class="fa fa-twitter"></i>
          <i class="fa fa-linkedin"></i>
          <i class="fa fa-youtube"></i>
      </div>
    </div>
    <div class="card" id="2">
      <h1>GALLERY</h1>
      <br>
      <p>
        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.
      </p>
      <div class="social">
          <i class="fa fa-facebook"></i>
          <i class="fa fa-twitter"></i>
          <i class="fa fa-linkedin"></i>
          <i class="fa fa-youtube"></i>
      </div>
    </div>
    <div class="card" id="3">
      <h1>TEAM</h1>
      <br>
      <p>
        Consectetur adipisicing 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.
      </p>
      <div class="social">
          <i class="fa fa-facebook"></i>
          <i class="fa fa-twitter"></i>
          <i class="fa fa-linkedin"></i>
          <i class="fa fa-youtube"></i>
      </div>
    </div>
    <div class="card" id="4">
      <h1>TESTIMONIAL</h1>
      <br>
      <p>
        Sed do eiusmod
        tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam,
        quis nostrcaecat cupidatat nonv proident, sunt in culpa qui officia deserunt mollit anim id est laborum.
      </p>
      <div class="social">
          <i class="fa fa-facebook"></i>
          <i class="fa fa-twitter"></i>
          <i class="fa fa-linkedin"></i>
          <i class="fa fa-youtube"></i>
      </div>
    </div>
    <div class="card" id="5">
      <h1>FAQ</h1>
      <br>
      <p>
        Ut enim ad minim veniam,
        quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo
        consequat. Duis aute irure dolor in reprehenderit in vo cupidatat non
        proident, sunt in culpa qui officia deserunt mollit anim id est laborum.
      </p>
      <div class="social">
          <i class="fa fa-facebook"></i>
          <i class="fa fa-twitter"></i>
          <i class="fa fa-linkedin"></i>
          <i class="fa fa-youtube"></i>
      </div>
    </div>
    <div class="card" id="6">
      <h1>LOCATION</h1>
      <br>
      <p>
        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 volupest laborum.
      </p>
      <div class="social">
          <i class="fa fa-facebook"></i>
          <i class="fa fa-twitter"></i>
          <i class="fa fa-linkedin"></i>
          <i class="fa fa-youtube"></i>
      </div>
    </div>
  </section>
</section>
<script>
   $(document).ready(function() {
  var oldId = null;

  $('.tabs-controls-link').click(function(e) {
    e.preventDefault();

    if ($(this).hasClass('tabs-controls-link-active')) {
      return false;
    }

    var currentId = parseInt($(this).data('id'), 10);
    $('.tabs-controls-link-active').removeClass('tabs-controls-link-active');
    $(this).addClass('tabs-controls-link-active');

    if (currentId < oldId) { // item is hidden
      var timing = $('.card.hidden').length * 100;
      $('.card').each(function(index) {
        if (index > (currentId - 1 ) || index == (currentId - 1)) {
          window.setTimeout(function() {
            $('.card').eq(index).removeClass('hidden');
          }, timing - (index * 100));
        }
      });
    } else {
      $('.card').each(function(index) {
        if (index < (currentId - 1)) {
          window.setTimeout(function() {
            $('.card').eq(index).addClass('hidden');
          }, index * 100);
        }
      });
    }

    oldId = currentId;
  });
}); 
    
</script>
</body>
</html>

在线演示


让链接同时具备两种打开方式
获取源码: Tabrrrrr
下载数:129人次, 文件大小: 13.7 KB, 上传日期: 2020年-11 月-26日

公众号回复:gcode  获取解压密码

qrcode_for_gh_6ea2c28a1709_258 (1)

3,085 人查阅

类似文章