Сирожиддин
#1
Tajriba: anime.js kutubxonasiga asoslangan jonlantirilgan SVG harflari.


HTML
Agar siz ushbu misolni ko'rib chiqsangiz, ayrim harflar turli tomonlardan ko'rsatilganligini ko'rishingiz mumkin. Har bir animatsiya uchun alohida sahifa elementini yaratishingiz kerak bo'ladi. Misol uchun, "L" harfi ikkita konteynerdan iborat: vertikal va gorizontal chiziq:
  1. <svg width="100%" height="100%" viewBox="0 0 320 180" class="letters letters--effect-1">
  2. <!--W-->
  3. <g class="letter letter--1">
  4. <g class="letter__part">
  5. <path class="letter__layer color-6" d="M25,39.7l22.4,51l7.9-32.2L76.2,84l1.3-61.2" />
  6. <path class="letter__layer color-1" d="M25,39.7l22.4,51l7.9-32.2L76.2,84l1.3-61.2" />
  7. <path class="letter__layer color-2" d="M25,39.7l22.4,51l7.9-32.2L76.2,84l1.3-61.2" />
  8. </g>
  9. </g>
  10. <!--I-->
  11. <g class="letter letter--2">
  12. <g class="letter__part">
  13. <path class="letter__layer color-6" d="M100,20.3l8.4,58.4" />
  14. <path class="letter__layer color-2" d="M100,20.3l8.4,58.4" />
  15. <path class="letter__layer color-3" d="M100,20.3l8.4,58.4" />
  16. </g>
  17. </g>
  18. <!--L-->
  19. <g class="letter letter--3">
  20. <g class="letter__part">
  21. <path class="letter__layer color-6" d="M126.4,70.8l27.6,0.5" />
  22. <path class="letter__layer color-3" d="M126.4,70.8l27.6,0.5" />
  23. <path class="letter__layer color-4" d="M126.4,70.8l27.6,0.5" />
  24. </g>
  25. <g class="letter__part">
  26. <path class="letter__layer color-6" d="M128.9,15.6l-2.3,60.2" />
  27. <path class="letter__layer color-3" d="M128.9,15.6l-2.3,60.2" />
  28. <path class="letter__layer color-4" d="M128.9,15.6l-2.3,60.2" />
  29. </g>
  30. </g>
  31. <!-- ...and so on -->
  32. </svg>
SVG rasmlarini yaxshiroq ajratish uchun bir nechta class'lar qo'shamiz.

CSS
  1. /* Main SVG */
  2.  
  3. .letters {
  4. position: relative;
  5. display: block;
  6. min-height: 400px;
  7. max-height: 70vh;
  8. margin: 0 auto;
  9. }
  10.  
  11.  
  12. /* Letter path */
  13.  
  14. .letter__layer {
  15. fill: none;
  16. stroke-miterlimit: 3;
  17. stroke-linecap: butt;
  18. stroke-linejoin: bevel;
  19. }
  20.  
  21. /* Styles for effect 1 */
  22.  
  23. .letters--effect-1 .letter__layer:first-child {
  24. stroke-width: 9px;
  25. }
  26.  
  27. .letters--effect-1 .letter__layer:nth-child(2) {
  28. stroke-width: 9.5px;
  29. }
  30.  
  31. .letters--effect-1 .letter__layer:nth-child(3) {
  32. stroke-width: 10px;
  33. }
  34.  
  35.  
  36. /* Effect 1 colors */
  37.  
  38. .color-1 { stroke: #dea521; }
  39. .color-2 { stroke: #f84242; }
  40. .color-3 { stroke: #3758a7; }
  41. .color-4 { stroke: #f79c8c; }
  42. .color-5 { stroke: #84b5bd; }
  43. .color-6 { stroke: #feefde; }

JS
  1. Phrase.prototype.options = {
  2. pathOpacityAnim: false,
  3. outAnimation: {
  4. translateY: [0, 15],
  5. opacity: [1, 0],
  6. duration: 250,
  7. easing: 'easeInOutQuad'
  8. },
  9.  
  10. inAnimation: {
  11. properties: {
  12. translateY: {
  13. value: [-30, 0],
  14. duration: 900,
  15. elasticity: 600,
  16. easing: 'easeOutElastic'
  17. },
  18. opacity: {
  19. value: [0, 1],
  20. duration: 500,
  21. easing: 'linear'
  22. },
  23. },
  24. delay: 40 // задержка для букв.
  25. },
  26. // Настройки анимации обводки
  27. pathAnimation: {
  28. duration: 800,
  29. easing: 'easeOutQuint',
  30. delay: 200 // задержка
  31. }
  32. };


Umid qilamizki, ushbu misol siz uchun foydali bo'ldi!

Ushbu dars ruseller.com sayti jamoasi tomonidan siz uchun tayyorlangan.
Kurs manbai: https://tympanus.net/codrops/2016/09/13/fancy-svg-letter-animation/
Rus-tiliga tarjima: Станислав Протасевич
O'zbek tiliga tarjima: Сирожиддин Эрназаров
Temur8818
#2
Ajoyib ko'rinarkan
10
Megatron
#3
mendagi aql bu narsalarga yetmasa kerak :-D

albatta bu yo'nalish bo'yicha
gi8ri7
#4
SVG dan foydalanish haqida to'liq darslik yozish kerak
1 daqiqa 8 soniyadan keyin yozdi:
Bo'shab qolsam kechroq yozaman yoki ungacha o'zingiz yozib yuborasizmi Sirojiddin (aka)
Akbarali
#5
3 kundan beri mehmon bo'lib kirayotgan edim. Shu mavzuni ko'rib aloxida vaqt ajratdim.
.
svg bu html tilida yaratilgan rasm. svgga umuman kenglik balandlik va hajm berilmagani sababli uni hohlagancha kattalashtrish va kichiklashtrish mumkun. Svg ni qancha kattalashtrmang yoki kichiklashtrmang uning tiniqligi va sifatiga zarracha ta'sir ko'rsatmaydi. Saytingiz iconca va rasmlarini svgda tuzsangiz saytingiz anchagina tez yuklanadi. Svgning yomon taraflarini ertaga aniqroq yozaman.
.
Huddi shunga o'xshagan htmldagi teg bu cavans. Cavansning eng yaxshi tomoni cavansda yaratilgan rasmlarni .jpg va .png shakilda saqlashingiz mumkun.
.
Lekin svg va cavans lar yaratilishi boshqacharoq. Bu gaplarimni o'qib bular bir biriga o'xshagan va bir xil yaratilar ekan deb o'ylamaylar.
NetLizard
#6
Yana d3 js ham bor vizualizatsiyalar uchun https://d3js.org/
1135
End
#7
Cаванс емас Cанвас бўлса керак. Агар шуни айтаётган бўлсангиз
Akbarali
#8
Arey, # Arey (28.01.2019 / 22:09)
Cаванс емас Cанвас бўлса керак. Агар шуни айтаётган бўлсангиз
Ish bor joyda kamchlik bo'ladi. Javadaligm pand berdi. ertaga to'g'irlavoraman.
1135
End
#9
Akbarali, # Akbarali (28.01.2019 / 22:20)
Arey, Ish bor joyda kamchlik bo'ladi. Javadaligm pand berdi. ertaga to'g'irlavoraman.
Bu shunchaki tez yozishdagi imloviy xato bo'lsa 2-3 marta bir xil yozilmasdi.
developer
#10
  1. <!DOCTYPE html>
  2. <meta charset="utf-8">
  3. <title>TO'P</title>
  4. <style type="text/css">
  5. .phdr{
  6. border: 1px solid red;
  7. width: 90%;
  8. height: 600px;
  9. background-color: #a2f688;
  10. margin: 5px auto;
  11. position: relative;
  12. }
  13. /*.top{
  14. border: 0px solid red;
  15. background-color: black;
  16. width: 40px;
  17. height: 40px;
  18. border-radius: 100%;
  19. position: absolute;
  20. left: 10px;
  21. bottom: 5px;
  22. }*/
  23. .ustun{
  24. border: 0px solid black;
  25. width: 30px;
  26. height: 400px;
  27. background-color: black;
  28. position: absolute;
  29. right: 0px;
  30. bottom: 0px;
  31. }
  32. .qosqon{
  33. border: 0px solid black;
  34. width: 100px;
  35. height: 100px;
  36. background-color: black;
  37. position: absolute;
  38. right: 30px;
  39. bottom: 300px;
  40. }
  41. .shit{
  42. border: 2px solid red;
  43. width: 100px;
  44. height: 50px;
  45. border-radius: 100%;
  46. position: absolute;
  47. right: 130px;
  48. bottom: 330px;
  49.  
  50.  
  51. }
  52. .top{
  53. border: 0px solid red;
  54. background-color: black;
  55. width: 40px;
  56. height: 40px;
  57. border-radius: 100%;
  58. position: absolute;
  59. left: 10px;
  60. bottom: 150px;
  61. animation-name: top;
  62. animation-duration: 4s;
  63. animation-delay: 3s;
  64. animation-fill-mode: forwards;
  65. animation-iteration-count: infinite;
  66.  
  67. }
  68.  
  69. @keyframes top{
  70. 0%{left: 10px; bottom: 150px;}
  71. 10%{left: 10px; bottom: 3px;}
  72. 15%{left: 10px; bottom: 150px;}
  73. 20%{left: 10px; bottom: 3px;}
  74. 50%{left: 970px; bottom: 550px;}
  75. 70%{left: 980px; bottom: 3px;}
  76. 80%{left: 980px; bottom: 150px;}
  77. 90%{left: 980px; bottom: 3px;}
  78. 100%{left: 10px; bottom: 3px;}
  79. }
  80. .tag{
  81. border: 3px dotted black;
  82. width: 40px;
  83. height: 15px;
  84. border-radius: 10px;
  85. position: absolute;
  86. left: 10px;
  87. bottom: 135px;
  88. animation: tag 3s ease-in-out 1 0s;
  89. animation-fill-mode: forwards;
  90.  
  91.  
  92. }
  93. @keyframes tag{
  94. from{left: 10px; bottom: 135px;}
  95. to{left: 50px; bottom: 135px;}
  96. }
  97.  
  98. </head>
  99. <div class="phdr">
  100. <div class="top"></div>
  101. <div class="tag"></div>
  102. <div class="ustun"></div>
  103. <div class="qosqon"></div>
  104. <div class="shit"></div>
  105. </div>
  106.  
  107. </body>
  108. </html>
developer
#11
Серёжа, men yozgan kodni ham ishlataolasmi ko'rinishini basketbol to'pini savatga tushishini yozgandim
Сирожиддин
#12
developer, # developer (29.01.2019 / 01:05)
Серёжа, men yozgan kodni ham ishlataolasmi ko'rinishini basketbol to'pini savatga tushishini yozgandim
xa kodlaringizga ozgina ranglar ham qo'shdim:

Biriktirilgan fayllar [1]:
 basket.jpg (12.14 KB) (122 ↴)
NetLizard
#13
Сирожиддин, rostan ham koptok savatga tushadimi?
Сирожиддин
#14
MasterOS, # MasterOS (29.01.2019 / 10:29)
Сирожиддин, rostan ham koptok savatga tushadimi?
developer yozgan kodda savatchaga yetmay yerga tushadigan qilib yzilgan ekan, men to'pni savatga olib borishdan ko'ra savatni to'p tagiga olib kelishni ma'qul bildim. Bu kodlarda rasmdagiday manzara ko'rinadi va to'p harakatlanib savatga tushadi.
Biriktirilgan fayllar [1]:
 basket.zip (0.72 KB) (127 ↴)
NetLizard
#15
Сирожиддин, Bu sizni modingiz togrimi, undan oyin yaratishda foydalansam boladimi?
Сирожиддин
#16
MasterOS, # MasterOS (29.01.2019 / 10:36)
Сирожиддин, Bu sizni modingiz togrimi, undan oyin yaratishda foydalansam boladimi?
urinib ko'ring. 2 qator ko'dni nimasidan o'yin yaratisiz, butun boshli kod yozish ishlarlari oldingizda bo'lsa.
23 soniyadan keyin yozdi:
bu developerni kodlari, men faqat rang berdim.
NetLizard
#17
Сирожиддин, Haligi SoloLearnda korgandim.Hech qanday javascriptsiz Css ozidan oyin yaratishgan.
Buni bunday qilamiz 10 ta imkoniyat beriladi, har bir tushgan koptokka achko beriladi, agar 6 tadan kop tushirsa ekranda popup va Kubog rasmi chiqadi.
Va oyinchi 2,3,4 bosqichlarga otish imkoniga ega boladi.
Qisqasi 20-40 qator kod qoshib, modlab, shuni hosil qilib koraman.
NetLizard
#18
Gangnam Style CSS3
Biriktirilgan fayllar [1]:
 css3_gangnam.zip (189.47 KB) (128 ↴)
Сирожиддин
#19
Mavzu lentaga chiqishi uchun post qoldirildi!
Foydalaning, o'rganing, ulashing.

Kunduzi: 12°C

29 Mar 2024 yil
Joylashuv aniqlanmadi