App.js 8.4 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189
  1. import logo from './logo.svg';
  2. import './App.css';
  3. import { Children } from 'react';
  4. const MenuLi = ({children, url}) =>
  5. <li>
  6. <a href={url}>{children}</a>
  7. </li>
  8. const NumbersItem = ({url, imgSrc, imgAlt="no alt", h3, subtext}) =>
  9. <a href={url} class="numbers_item">
  10. <img src={imgSrc} class="numbers_item_img" alt={imgAlt} />
  11. <div class="numbers_item_text">
  12. <h3 class="numbers_item_value">
  13. {h3}
  14. </h3>
  15. <p class="numbers_item_subtext">
  16. {subtext}
  17. </p>
  18. </div>
  19. </a>
  20. const SkillItem = ({skillTitle, skillPercent}) =>
  21. <div class="skill-item">
  22. <span class="skill-title">{skillTitle}</span>
  23. <div class="skill-load">
  24. <div class="skill-progress" style={{width: skillPercent}}></div>
  25. </div>
  26. </div>
  27. const GallaryItem = ({urlImg}) =>
  28. <>
  29. <a href="#" class="gallary-item" style={{backgroundImage: 'url(' + urlImg + ')'}}></a>
  30. </>
  31. const ClientsItem = ({imgSrc, imgAlt="no alt"}) =>
  32. <div class="clients-box">
  33. <div class="clients-box-img">
  34. <img src={imgSrc} alt={imgAlt} />
  35. </div>
  36. </div>
  37. function App() {
  38. return (
  39. <div className="App">
  40. <div class="body-wrapper">
  41. <header class="first-screen" id="header">
  42. <div class="header">
  43. <a href='#' class='logo'>
  44. <img src='images/logo.png' alt='logo' />
  45. </a>
  46. <nav class="nav">
  47. <input id="menu__toggle" type="checkbox" />
  48. <label class="menu__btn" for="menu__toggle">
  49. <span></span>
  50. </label>
  51. <ul class="menu">
  52. <MenuLi url="#header">Главная</MenuLi>
  53. <MenuLi url="#about_me">Об авторе</MenuLi>
  54. <MenuLi url="#numbers">Работа</MenuLi>
  55. <MenuLi url="#video">Процесс</MenuLi>
  56. <MenuLi url="#form">Контакты</MenuLi>
  57. </ul>
  58. </nav>
  59. </div>
  60. <div class="first-screen-img">
  61. <img src="images/Frame.svg" alt="дизайн и вёрстка" />
  62. </div>
  63. <div class="first-screen-text">
  64. <h1>Дизайн и вёрстка</h1>
  65. <p class="subheader">Lorem Ipsum - это текст-"рыба", часто используемый в печати и вэб-дизайне. Lorem
  66. Ipsum является стандартной "рыбой"? для текстов на латинице с начала XVI века.
  67. </p>
  68. <a href="#" class="btn">Написать мне </a>
  69. </div>
  70. </header>
  71. <section class="about_me" id="about_me">
  72. <h2>Обо мне.</h2>
  73. <p>Lorem Ipsum - это текст-"рыба" , часто используемый в печати и вэб-дизайне. Lorem Ipsum является
  74. стандартной "рыбой"? для текстов на латинице с начала XVI века.</p>
  75. </section>
  76. <section class="numbers" id="numbers">
  77. <div class="numbers_wrapper">
  78. <NumbersItem url="#" imgSrc="images/project.png" imgAlt="Project"
  79. h3="40+" subtext="проектов" />
  80. <NumbersItem url="#" imgSrc="images/project.png" imgAlt="Project"
  81. h3="30+" subtext="внедрений" />
  82. <NumbersItem url="#" imgSrc="images/project.png" imgAlt="Project"
  83. h3="50+" subtext="технологий" />
  84. <NumbersItem url="#" imgSrc="images/project.png" imgAlt="Project"
  85. h3="50+" subtext="идей" />
  86. <NumbersItem url="#" imgSrc="images/project.png" imgAlt="Project"
  87. h3="40+" subtext="заказчиков" />
  88. <NumbersItem url="#" imgSrc="images/project.png" imgAlt="Project"
  89. h3="40+" subtext="разработок" />
  90. </div>
  91. </section>
  92. <section class="skills">
  93. <div class="skills-wrapper">
  94. <div class="skill-list-wrapper">
  95. <div class="skill-list">
  96. <h2>Мои навыки</h2>
  97. <SkillItem skillPercent="20%" skillTitle="PhotoShop"/>
  98. <SkillItem skillPercent="87%" skillTitle="CorelDraw"/>
  99. <SkillItem skillPercent="50%" skillTitle="Figma"/>
  100. </div>
  101. </div>
  102. <div class="skills-face">
  103. <img src="images/img.jpg" class="face" alt="морда" />
  104. </div>
  105. </div>
  106. </section>
  107. <section class="video" id="video">
  108. <div class="video-wrapper">
  109. <div class="video_title">
  110. <h2>Как я работаю</h2>
  111. <p>Lorem Ipsum - это текст-"рыба", часто используемый в печати и вэб-дизайне. Lorem Ipsum является
  112. стандартной "рыбой" для текстов на латинице с начала XVI века.</p>
  113. </div>
  114. <div class="video-frame" style={{cssText: "background-image: url('images/Rectangle_5.jpg')"}}>
  115. <button class="video-btn">
  116. <img src="images/play-button.svg" alt="play video" />
  117. </button>
  118. </div>
  119. </div>
  120. </section>
  121. <section class="section-gallery">
  122. <div class="gallary-list">
  123. <GallaryItem urlImg="images/img-1.jpg" />
  124. <GallaryItem urlImg="images/img-2.jpg" />
  125. <GallaryItem urlImg="images/img-1.jpg" />
  126. <GallaryItem urlImg="images/img-2.jpg" />
  127. <GallaryItem urlImg="images/img-1.jpg" />
  128. <GallaryItem urlImg="images/img-2.jpg" />
  129. <GallaryItem urlImg="images/img-1.jpg" />
  130. <GallaryItem urlImg="images/img-2.jpg" />
  131. </div>
  132. </section>
  133. <section class="clients">
  134. <div class="clients-blockitems">
  135. <ClientsItem imgSrc="images/client1.png" imgAlt="microsoft"/>
  136. <ClientsItem imgSrc="images/makita-logo.svg" imgAlt="makita"/>
  137. <ClientsItem imgSrc="images/davidoff-goodlife-woman.svg" imgAlt="davidoff"/>
  138. <ClientsItem imgSrc="images/polski-fiat-logo.svg" imgAlt="polski fiat"/>
  139. <ClientsItem imgSrc="images/kenwood-logo.svg" imgAlt="kenwood"/>
  140. <ClientsItem imgSrc="images/opera-mini-browser.svg" imgAlt="Opera-mini"/>
  141. </div>
  142. </section>
  143. <section class="form" id="form">
  144. <div class="max-width-540px">
  145. <h2>Хотите веб-сайт?</h2>
  146. <p>Lorem Ipsum - это текст-"рыба", часто используемый в печати и вэб-дизайне. Lorem Ipsum является
  147. стандартной "рыбой" для текстов на латинице с начала XVI века.
  148. </p>
  149. <form class="form-container" name="my-form">
  150. <input type="text" placeholder="Ваше имя" name="username" required class="form-username" />
  151. <input type="email" placeholder="Ваш email" name="user-email" required class="form-input" />
  152. <textarea name="textarea" placeholder="Сообщение"></textarea>
  153. <input type="submit" class="btn" />
  154. </form>
  155. </div>
  156. </section>
  157. <footer class="footer">
  158. <div class="wrapper-1150px flex">
  159. <div class="footer-side-left">
  160. <h3>Дмитрий Панасенко</h3>
  161. <p>&copy; <time datetime="2018">2018</time>. Все права защищены</p>
  162. </div>
  163. <div class="footer-side-right">
  164. <a href="" class="icon icon-facebook-f"></a>
  165. <a href="" class="icon icon-vk"></a>
  166. <a href="" class="icon icon-twitter"></a>
  167. <a href="" class="icon icon-instagram"></a>
  168. </div>
  169. </div>
  170. </footer>
  171. </div>
  172. </div>
  173. );
  174. }
  175. export default App;