Как вырезать кусок из фона, который задан цветом?

249
14 февраля 2018, 09:42

Имеется первый блок с bg-изображение. Слоем выше находится следующий-второй блок, но с уже bg в виде #fff, т.е. первый блок с фоном #fff перекрывает собой второй блок с bg-изображение.

Имеется-ли возможно вырезать часть фона второго блока так, чтобы мы через это отверстие увидели изображение первого блока?

Скрин-пример:

Answer 1

Можно через clip-path, в статье Аны Тюдор описано более подробно.

.wrapper { 
  width: 610px; 
  height: 565px; 
  position: relative; 
} 
 
.wrapper > div { 
  width: inherit; 
  height: inherit; 
} 
 
.first-layer { 
  background: url(https://i2.wp.com/digital-photography-school.com/wp-content/uploads/flickr/5661878892_15fba42846_o.jpg?resize=610%2C565&ssl=1); 
  position: absolute; 
} 
 
.second-layer { 
  position: absolute; 
  background: #fff; 
  clip-path: polygon( 
  /* points of the outer triangle going counterclockwise */ 
  285px 150px, 83px 33px, 83px 267px,  
   
  /* return to the first point of the outer triangle */ 
  285px 150px,  
   
  /* points of the inner triangle going clockwise */ 
  258px 150px, 96px 244px, 96px 56px,  
   
  /* return to the first point of the inner triangle */ 
  258px 150px 
  ); 
}
<div class="wrapper"> 
  <div class="first-layer"></div> 
  <div class="second-layer"></div> 
</div>

Answer 2

Нашли решение: https://www.sarasoueidan.com/blog/css-svg-clipping/

<svg>
  <defs>
    <clipPath id="clipping">
      <polygon points="98.4999978 153.75..."/> // ваша маска
    </clipPath>
  </defs>
</svg>

-

.item {
  clip-path: url(#clipping);
}
READ ALSO
Отображение блоков в разных браузерах

Отображение блоков в разных браузерах

Вот макет, в Firefox при изменении размера колесиком, первый блок после header(class welcome) отображается не так как в ChromeКак это исправить?

216
Работа с SQL и PHP

Работа с SQL и PHP

У меня система регистрации и входаЯ добавил uniqueID-это как бы с помощью функции rand дает input value и отправляется вместе с email-ами так далее

229
CheckBox вывод данных из mysql

CheckBox вывод данных из mysql

ЗдравствуйтеУ меня есть 2 чек бокса которые выводятся из базы данных

236
Разбить код по файлам [дубликат]

Разбить код по файлам [дубликат]

На данный вопрос уже ответили:

252