当前位置:   article > 正文

【带给你不一样的思路】纯 CSS + HTML 实现几个好看的案例_好看的html css代码

好看的html css代码

1.六边形战士

        像这种多边形案例的实现,很多小朋友都会采用调整角度的方法慢慢调,但是着这种方法真的会很麻烦,甚至我们的角度计算还会用到勾股定理,勾股定理是啥,啊??不过放心,今天带给大家一个新的思路,拼接。

        实现原理:将我们的多边形分成两半,采用定位的方式进行拼接,只需要折合两个非常简单的角度即可,废话不多说,直接上代码。

        代码示例:

  1. <!DOCTYPE html>
  2. <html lang="en">
  3. <head>
  4. <meta charset="UTF-8">
  5. <meta name="viewport" content="width=, initial-scale=1.0">
  6. <title>Document</title>
  7. <style>
  8. * {
  9. margin: 0;
  10. padding: 0;
  11. }
  12. div {
  13. transform-style: preserve-3d;
  14. width: 600px;
  15. height: 600px;
  16. margin: 400px;
  17. position: relative;
  18. transform: rotate3d(1, 1, 1, 0deg);
  19. perspective: 1000px;
  20. animation: rotate 5s linear 10s infinite;
  21. }
  22. .one {
  23. transform-style: preserve-3d;
  24. width: 200px;
  25. height: 200px;
  26. list-style: none;
  27. font-size: 30px;
  28. line-height: 200px;
  29. text-align: center;
  30. font-weight: bolder;
  31. transform: rotate3d(1, 1, 1, 0deg);
  32. background-size: contain;
  33. }
  34. .two {
  35. position: absolute;
  36. top: 0;
  37. left: 0;
  38. transform-style: preserve-3d;
  39. width: 200px;
  40. height: 200px;
  41. list-style: none;
  42. font-size: 30px;
  43. line-height: 200px;
  44. text-align: center;
  45. font-weight: bolder;
  46. transform: rotate3d(1, 1, 1, 0deg);
  47. transition: top 3s linear 0s;
  48. }
  49. li {
  50. width: 200px;
  51. height: 200px;
  52. background-color: antiquewhite;
  53. position: absolute;
  54. transition: transform 5s linear 3s;
  55. background-size: contain;
  56. }
  57. .one li:nth-child(1) {
  58. background-image: url(images-follow/flower4.jpg);
  59. }
  60. .one li:nth-child(2) {
  61. background-image: url(images-follow/flower1.jpg);
  62. }
  63. .one li:nth-child(3) {
  64. background-image: url(images-follow/flower2.jpg);
  65. }
  66. .two li:nth-child(1) {
  67. background-image: url(images-follow/flower10.jpg);
  68. }
  69. .two li:nth-child(2) {
  70. background-image: url(images-follow/flower11.jpg);
  71. }
  72. .two li:nth-child(3) {
  73. background-image: url(images-follow/flower12.jpg);
  74. }
  75. div:hover .one li:nth-child(1) {
  76. transform: rotateX(90deg);
  77. }
  78. div:hover .one li:nth-child(2) {
  79. transform-origin: 0 100px;
  80. transform: rotateX(90deg) translateX(200px) rotateY(60deg);
  81. }
  82. div:hover .one li:nth-child(3) {
  83. transform-origin: 200px 100px;
  84. transform: rotateX(90deg) translateX(-200px) rotateY(-60deg);
  85. }
  86. div:hover .two li:nth-child(1) {
  87. transform: rotateX(90deg);
  88. }
  89. div:hover .two li:nth-child(2) {
  90. transform-origin: 200px 100px;
  91. transform: rotateX(90deg) translateX(-200px) rotateY(60deg);
  92. }
  93. div:hover .two li:nth-child(3) {
  94. transform-origin: 0 100px;
  95. transform: rotateX(90deg) translateX(200px) rotateY(-60deg);
  96. }
  97. div:hover .two {
  98. top: 345px
  99. }
  100. @keyframes rotate {
  101. from {
  102. transform: rotate3d(1, 1, 1, 0deg);
  103. }
  104. to {
  105. transform: rotate3d(1, 1, 1, 360deg);
  106. }
  107. }
  108. </style>
  109. </head>
  110. <body>
  111. <div>
  112. <ul class="one">
  113. <li></li>
  114. <li></li>
  115. <li></li>
  116. </ul>
  117. <ul class="two">
  118. <li></li>
  119. <li></li>
  120. <li></li>
  121. </ul>
  122. </div>
  123. </body>
  124. </html>

   注意事项,这个六边形有点叛逆,需要鼠标滑动上去才能展示它的魅力,整体实现思路也能通过动画展示出来,赶紧试试吧。

2.水波文字

        实现原理:背景定位 + 我们的动画 + 背景裁切

        代码示例:

  1. <!DOCTYPE html>
  2. <html lang="en">
  3. <head>
  4. <meta charset="UTF-8">
  5. <meta name="viewport" content="width=device-width, initial-scale=1.0">
  6. <title>Document</title>
  7. <style>
  8. div{
  9. margin: 0 auto;
  10. text-align: center;
  11. width: 600px;
  12. height: 600px;
  13. background-color: gainsboro;
  14. }
  15. h1{
  16. font-size: 10em;
  17. padding-top: 100px;
  18. color: rgba(0, 0, 0,.1);
  19. background-image: url(images/17.jpg) ;
  20. background-repeat: repeat-x;
  21. background-position: -100px -20px;
  22. -webkit-background-clip: text;
  23. animation: move 15s linear infinite;
  24. }
  25. @keyframes move{
  26. 0%{
  27. background-position: 40px -20px;
  28. }
  29. 20%{
  30. background-position: 80px -50px;
  31. }
  32. 40%{
  33. background-position: 120px -20px;
  34. }
  35. 80%{
  36. background-position: 180px -50px;
  37. }
  38. 100%{
  39. background-position: 220px -20px;
  40. }
  41. }
  42. </style>
  43. </head>
  44. <body>
  45. <div>
  46. <h1>WATER</h1>
  47. </div>
  48. </body>
  49. </html>

   注意事项:这里的图片使用的是自己的图片,背景图片可以找一个自己喜欢的水波纹效果,换一下即可。

3.美女

        这种小案例是我们最常见的一种,看起来非常的炫酷,鼠标放上去会有放大效果,是不是可以等你女哦嗯有过生日的时候,发一个这个给她呢,也算是一个惊喜吧哈哈哈哈!!!

        实现原理:3D 旋转 + 背景图片

        代码示例:

  1. <!DOCTYPE html>
  2. <html lang="en">
  3. <head>
  4. <meta charset="UTF-8">
  5. <meta name="viewport" content="width=, initial-scale=1.0">
  6. <title>Document</title>
  7. <style>
  8. ul {
  9. position: absolute;
  10. top: 50%;
  11. left: 50%;
  12. margin-top: -260px;
  13. margin-left: -260px;
  14. transform-style: preserve-3d;
  15. width: 520px;
  16. height: 520px;
  17. list-style: none;
  18. animation: rotate 5s linear infinite;
  19. cursor: pointer;
  20. }
  21. li {
  22. position: absolute;
  23. left: 50%;
  24. top: 50%;
  25. background-size: contain;
  26. }
  27. .one li {
  28. width: 100px;
  29. height: 100px;
  30. margin-top: -50px;
  31. margin-left: -50px;
  32. }
  33. .two li {
  34. width: 200px;
  35. height: 200px;
  36. margin-top: -100px;
  37. margin-left: -100px;
  38. opacity: 0.1;
  39. transition: all .3s linear 0s;
  40. }
  41. .one li:nth-child(1) {
  42. transform: translateZ(50px);
  43. background-image: url(images/01.png);
  44. }
  45. .one li:nth-child(2) {
  46. transform: rotateY(-90deg) translateZ(50px);
  47. background-image: url(images/02.png);
  48. }
  49. .one li:nth-child(3) {
  50. transform: rotateX(90deg) translateZ(50px);
  51. background-image: url(images/03.png);
  52. }
  53. .one li:nth-child(4) {
  54. transform: rotateX(-90deg) translateZ(50px);
  55. background-image: url(images/04.png);
  56. }
  57. .one li:nth-child(5) {
  58. transform: rotateY(90deg) translateZ(50px);
  59. background-image: url(images/05.png);
  60. }
  61. .one li:nth-child(6) {
  62. transform: rotateY(180deg) translateZ(50px);
  63. background-image: url(images/06.png);
  64. }
  65. .two li:nth-child(1) {
  66. transform: translateZ(100px) scale(1);
  67. background-image: url(images/1.png);
  68. }
  69. .two li:nth-child(2) {
  70. transform: rotateY(-90deg) translateZ(100px) scale(1);
  71. background-image: url(images/2.png);
  72. }
  73. .two li:nth-child(3) {
  74. transform: rotateX(90deg) translateZ(100px) scale(1);
  75. background-image: url(images/3.png);
  76. }
  77. .two li:nth-child(4) {
  78. transform: rotateX(-90deg) translateZ(100px) scale(1);
  79. background-image: url(images/4.png);
  80. }
  81. .two li:nth-child(5) {
  82. transform: rotateY(90deg) translateZ(100px) scale(1);
  83. background-image: url(images/5.png);
  84. }
  85. .two li:nth-child(6) {
  86. transform: rotateY(-180deg) translateZ(100px) scale(1);
  87. background-image: url(images/6.png);
  88. }
  89. ul:hover li:nth-child(6) {
  90. transform: rotateY(-180deg) translateZ(300px) scale(2);
  91. background-image: url(images/6.png);
  92. }
  93. ul:hover li:nth-child(5) {
  94. transform: rotateY(90deg) translateZ(300px) scale(2);
  95. background-image: url(images/5.png);
  96. }
  97. ul:hover li:nth-child(4) {
  98. transform: rotateX(-90deg) translateZ(300px) scale(2);
  99. background-image: url(images/4.png);
  100. }
  101. ul:hover li:nth-child(3) {
  102. transform: rotateX(90deg) translateZ(300px) scale(2);
  103. background-image: url(images/3.png);
  104. }
  105. ul:hover li:nth-child(2) {
  106. transform: rotateY(-90deg) translateZ(300px) scale(2);
  107. background-image: url(images/2.png);
  108. }
  109. ul:hover li:nth-child(1) {
  110. transform: translateZ(300px) scale(2);
  111. background-image: url(images/1.png);
  112. }
  113. @keyframes rotate {
  114. from {
  115. transform: rotate3d(0, 1, 1, 0deg);
  116. }
  117. to {
  118. transform: rotate3d(0, 1, 1, 360deg);
  119. }
  120. }
  121. </style>
  122. </head>
  123. <body>
  124. <ul class="one" id="box1">
  125. <li></li>
  126. <li></li>
  127. <li></li>
  128. <li></li>
  129. <li></li>
  130. <li></li>
  131. </ul>
  132. <ul class="two" id="box2">
  133. <li></li>
  134. <li></li>
  135. <li></li>
  136. <li></li>
  137. <li></li>
  138. <li></li>
  139. </ul>
  140. </body>
  141. </html>

  注意事项:图片由于是本地图片,会导致复制代码运行没有图片展示,大家可以将自己的图片进行一个替换就能够看到自己想要的效果了,快去拿你女朋友试试吧。

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/你好赵伟/article/detail/167151
推荐阅读
相关标签
  

闽ICP备14008679号