Jump to content
  • Sign Up
  • 0

Как сверстать такой шестиугольник плавный ?


Alexej
 Share

Question

Нужно сверстать такой элемент. Сам не особо понимаю как такое делать. Знаю про то как шестиуголники делают но такими планому закругленными углами не знаю как.

 

ava.jpg

Link to comment
Share on other sites

5 answers to this question

Recommended Posts

  • 1

Можно так:

<div></div>
div{
  margin: 50px;
  height: 100px;
  width: 150px;
  background: #333;
  border-radius: 20px;
  position: relative;
}
div:after, div:before{
  content: '';
  display: block;
  position: absolute;
  height: 100px;
  width: 150px;
  border-radius: 20px;
  background: #333;
}
div:after{
  transform: rotate(60deg);
}
div:before{
  transform: rotate(-60deg);
}

 

  • Like 1
Link to comment
Share on other sites

  • 0
5 часов назад, AlexZaw сказал:

Можно так:


<div></div>

div{
  margin: 50px;
  height: 100px;
  width: 150px;
  background: #333;
  border-radius: 20px;
  position: relative;
}
div:after, div:before{
  content: '';
  display: block;
  position: absolute;
  height: 100px;
  width: 150px;
  border-radius: 20px;
  background: #333;
}
div:after{
  transform: rotate(60deg);
}
div:before{
  transform: rotate(-60deg);
}

 

Отлично! Только вот мне теперь на это место еще и фотку нужно закинуть, это возможно ?

Поддержка браузерами я так понимаю это IE8 и ниже не поддерживается ?

Edited by Alexej
Link to comment
Share on other sites

  • 0

@Alexej

Если задний фон позволяет можно использовать контр-форму. Т.е. центральная часть прозрачная, остальное - по цвету фона.

Ну или использоваять маски svg, если нужно кроссбраузерность и фон не однотонный. Но это то еще удовольствие. Особенно в IE )

Link to comment
Share on other sites

  • 0
3 часа назад, sigma77 сказал:

@Alexej

Если задний фон позволяет можно использовать контр-форму. Т.е. центральная часть прозрачная, остальное - по цвету фона.

Ну или использоваять маски svg, если нужно кроссбраузерность и фон не однотонный. Но это то еще удовольствие. Особенно в IE )

Я через пседоэлемент прозрачную картинку наложил на фото только вот картинка не совсем плавная.   

7 часов назад, AlexZaw сказал:

К сожалению нет, но вам поможет clip-path или mask http://htmlbook.ru/blog/maskirovanie-v-css


http://htmlbook.ru/blog/maskirovanie-v-css

 

Спасибо прочту. 

Link to comment
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.

Guest
Answer this question...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

 Share

  • Обсуждения

    • Sider
      Всем спс сам розобрался.
    • Nicolyasic
      Вот хороший пример "Рандомайзер слов из списка". Тут вместо дивов с картинками инпуты, но сути дела не меняет. Кроме того работает с разным кразмером списка (код универсальный). Если в сорсе код найдешь увидишь как работает — там 3 строчки с тем же Math.random. Если будут трудности пиши тут, я оповещение увижу кину тебе код оттуда + объясню шо как. Вообще прикольно так можешь посмотреть другие страницы на сайте, потренироваться с js (для начала как раз пойдет).   Ну я вовремя конечно 
    • SAVC
      Пытаюсь динамически сформировать группу элементов <input type="checkbox"> Элементы создаются, но не получается задать им надпись, хотя раньше, создавая их вручную в HTML, всё получалось..   vk-groups-3.html vk-groups-1.html наладил.. vk-groups-3.html
    • Bobbi86
      Вы отучились на бухгалтера или программиста? Почему спрашиваю. Я финансист, бухгалтер. Естественно, в свое время отучился на курсах 1С, но как экономист. Поэтому могу помочь с развитием именно в этом направлении, так как опыт огромный. 
    • Sider
      Всем привет.Не так давно начал изучать верстку.И кароче захотел создать слайдер на основе html css без js. Застрял булеты работают и стрелки также но только стрелки становяться видимы когда первый раз нажал на булет.До этого их никак немогу настроить.   <!DOCTYPE html> <html lang="en"> <head>     <meta charset="UTF-8">     <meta http-equiv="X-UA-Compatible" content="IE=edge">     <meta name="viewport" content="width=device-width, initial-scale=1.0">     <title>Document</title>     <style>         .wrapper{             width: 700px;             height: 400px;             margin:0 auto;             border:5px solid green;             border-radius: 20px;             overflow: hidden;             position: relative;         }         .container{             width: 600px;             height: 300px;             border: 5px solid green;             border-radius: 20px;             margin: 20px auto;         }         .slider__items{             display: none;         }         .bullets{             display: flex;             position: absolute;             left:100px;             bottom:30px;         }         .bullets__items{             width: 50px;             height: 15px;             border:2px solid green;             border-radius: 20px;             background-color: lightgreen;             margin: 0 20px;         }             .images{             display: flex;         }         .images__items{             width: 600px;             height: 300px;             border-radius: 20px;             margin-right: 55px;         }               .arrows__prev{             background-image: url(./img/next.png);             background-size: contain;             width: 40px;             height: 40px;             position: absolute;             top:150px;             left: 2px;         }         #slide1:checked ~ .images .image1{             margin-left: 0;         }         #slide2:checked ~ .images .image2{             margin-left: -655px;         }         #slide3:checked ~ .images .image3{             margin-left: -1310px;         }         #slide4:checked ~ .images .image4{             margin-left: -1965px;         }         #slide5:checked ~ .images .image5{             margin-left: -2620px;         }         #slide1:checked ~ .arrow__next .img2,         #slide2:checked ~ .arrow__next .img3,         #slide3:checked ~ .arrow__next .img4,         #slide4:checked ~ .arrow__next .img5,         #slide5:checked ~ .arrow__next .img1{             display: block;             background-image: url(./img/next.png);             background-size: contain;             width: 40px;             height: 40px;             position: absolute;             top:150px;             right: 2px;                 }         #slide1:checked ~ .arrow__prev .img5,         #slide2:checked ~ .arrow__prev .img1,         #slide3:checked ~ .arrow__prev .img2,         #slide4:checked ~ .arrow__prev .img3,         #slide5:checked ~ .arrow__prev .img4         {             display: block;             background-image: url(./img/prev.png);             background-size: contain;             width: 40px;             height: 40px;             position: absolute;             top:150px;             left: 2px;                 }     </style> </head> <body>     <div class="wrapper">         <div class="container">             <div class="slider">                 <input type="radio" name="slider" class="slider__items" id="slide1">                 <input type="radio" name="slider" class="slider__items" id="slide2">                 <input type="radio" name="slider" class="slider__items" id="slide3">                 <input type="radio" name="slider" class="slider__items" id="slide4">                 <input type="radio" name="slider" class="slider__items" id="slide5">                                 <div class="bullets">                     <label for="slide1" class="bullets__items"></label>                     <label for="slide2" class="bullets__items"></label>                     <label for="slide3" class="bullets__items"></label>                     <label for="slide4" class="bullets__items"></label>                     <label for="slide5" class="bullets__items"></label>                 </div>                 <div class="arrow__next">                     <label for="slide1" class="arrows__item img1"></label>                     <label for="slide2" class="arrows__item img2"></label>                     <label for="slide3" class="arrows__item img3"></label>                     <label for="slide4" class="arrows__item img4"></label>                     <label for="slide5" class="arrows__item img5"></label>                 </div>                 <div class="arrow__prev">                     <label for="slide1" class="arrows__item img1"></label>                     <label for="slide2" class="arrows__item img2"></label>                     <label for="slide3" class="arrows__item img3"></label>                     <label for="slide4" class="arrows__item img4"></label>                     <label for="slide5" class="arrows__item img5"></label>                 </div>                 <div class="images">                     <img src="./img/1.jpg" alt="" class="images__items image1">                     <img src="./img/2.jpg" alt="" class="images__items image2">                     <img src="./img/3.jpg" alt="" class="images__items image3">                     <img src="./img/4.jpg" alt="" class="images__items image4">                     <img src="./img/5.jpg" alt="" class="images__items image5">                 </div>             </div>         </div>     </div> </body> </html>
×
×
  • Create New...

Important Information

We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue. See more about our Guidelines and Privacy Policy