Как изменить цвет тени блока на «размытие» перевернутых углов в CSS

Я сделал строку меню в форме буквы L с перевернутыми углами внутри следующим методом:Инвертированные углы, но проблема в том, что я не могу изменить цвет угла на размытие, потому что его цвет взят из box-shadow.

Мой вопрос: как я могу изменить его на color: none; blur: 20px, например, Rec3 и Rec4? Или есть какой-нибудь другой способ сделать строку меню в форме буквы L?

Проблема:

Это мой код

body {
  background-image: url(https://images.pexels.com/photos/33109/fall-autumn-red-season.jpg?auto=compress&cs=tinysrgb&w=1260&h=750&dpr=1);
  background-repeat: no-repeat;
  background-size: cover;
}

.rec3 {
  /*Horizontal bar*/
  position: fixed;
  width: 60vw;
  height: 80px;
  backdrop-filter: blur(20px);
  bottom: 20px;
  left: 20px;
  border-radius: 0 25px 25px 80px;
}

.rec4 {
  /*Vertical bar*/
  position: fixed;
  width: 80px;
  height: 60vh;
  bottom: 90px;
  left: 20px;
  backdrop-filter: blur(20px);
  border-radius: 25px 25px 0 0;
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  overflow-y: hidden;
  z-index: -1;
}

#top {
  position: absolute;
  height: 30px;
  width: 30px;
  left: 80px;
  overflow: hidden;
}

#top {
  top: -30px;
}

#top::before {
  content: '';
  position: absolute;
  right: 0;
  height: 200%;
  width: 200%;
  border-radius: 100%;
  box-shadow: 10px 10px 5px 100px blue;
  /*How can i change this color like rec3 and rec 4 bar*/
  z-index: -1;
}

#top::before {
  top: -100%;
  right: -100%;
}
<div class = "rec3">
  <div id = "top"></div>
</div>
<div class = "rec4">
</div>

Я пытался создать SVG с помощью ИИ, но не знаю, как это сделать. AdobeIllus

Опубликованный вами код на самом деле не воспроизводит вашу проблему. Не могли бы вы добавить достаточно контента (фоновое изображение, соответствующие значки...), чтобы мы могли воспроизвести проблему, а затем легко увидеть, что происходит?

David Thomas 18.07.2024 14:36

Пожалуйста, прикрепите изображения фона и значков (их можно прикрепить онлайн), чтобы мы могли воспроизвести проблему и понять, в чем проблема.

Eun ji Gater 18.07.2024 14:57

@DavidThomas это угловой элемент (#top::before{box-shadow: 10px 10px 5px 100px gray;}), который должен вести себя как .rec3 и .rec4.

iorgu 18.07.2024 15:09

Я обновил фоновое изображение, значки имеют размер всего 60px 60px PNG, и это ни на что не влияет.

Ánh Nắng Của Em 18.07.2024 15:24

Значки img представляют собой файл PNG на моем компьютере, как я могу добавить его в вопрос? Нужно ли мне загрузить его куда-нибудь в Интернет, затем скопировать ссылку img и добавить ее в вопрос.

Ánh Nắng Của Em 18.07.2024 15:35
Улучшение производительности загрузки с помощью Google Tag Manager и атрибута Defer
Улучшение производительности загрузки с помощью Google Tag Manager и атрибута Defer
В настоящее время производительность загрузки веб-сайта имеет решающее значение не только для удобства пользователей, но и для ранжирования в...
Введение в CSS
Введение в CSS
CSS является неотъемлемой частью трех основных составляющих front-end веб-разработки.
Как выровнять Div по центру?
Как выровнять Div по центру?
Чтобы выровнять элемент <div>по горизонтали и вертикали с помощью CSS, можно использовать комбинацию свойств и значений CSS. Вот несколько методов,...
Навигация по приложениям React: Исчерпывающее руководство по React Router
Навигация по приложениям React: Исчерпывающее руководство по React Router
React Router стала незаменимой библиотекой для создания одностраничных приложений с навигацией в React. В этой статье блога мы подробно рассмотрим...
Система управления парковками с использованием HTML, CSS и JavaScript
Система управления парковками с использованием HTML, CSS и JavaScript
Веб-сайт по управлению парковками был создан с использованием HTML, CSS и JavaScript. Это простой сайт, ничего вычурного. Основная цель -...
Toor - Ангулярный шаблон для бронирования путешествий
Toor - Ангулярный шаблон для бронирования путешествий
Toor - Travel Booking Angular Template один из лучших Travel & Tour booking template in the world. 30+ валидированных HTML5 страниц, которые помогут...
2
5
103
1
Перейти к ответу Данный вопрос помечен как решенный

Ответы 1

Ответ принят как подходящий

Я вижу, что вас не волнуют «пересечения» в размытых блоках, поэтому вы можете применить mask + border-radius к элементу #top:

body {
  background-image: url(https://images.pexels.com/photos/33109/fall-autumn-red-season.jpg?auto=compress&cs=tinysrgb&w=1260&h=750&dpr=1);
  background-repeat: no-repeat;
  background-size: cover;
}

.rec3 {
  /*Horizontal bar*/
  position: fixed;
  width: 60vw;
  height: 80px;
  backdrop-filter: blur(20px);
  bottom: 20px;
  left: 20px;
  border-radius: 0 25px 25px 80px;
}

.rec4 {
  /*Vertical bar*/
  position: fixed;
  width: 80px;
  height: 60vh;
  bottom: 90px;
  left: 20px;
  backdrop-filter: blur(20px);
  border-radius: 25px 25px 0 0;
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  overflow-y: hidden;
  z-index: -1;
}

#top {
  position: fixed;
  height: 60px;
  width: 60px;
  left: 100px;
  overflow: hidden;
  bottom: 100px;
  backdrop-filter: blur(20px);
  mask: radial-gradient(30px, #0000 99%, #000);
  border-radius: 50% 50% 50% 0;
}
<div class = "rec3"></div>
<div class = "rec4"></div>
<div id = "top"></div>

Это сработало, но этот метод создал обводку по кругу. Я добавляю синий цвет, чтобы было легче видеть .

Ánh Nắng Của Em 19.07.2024 02:51

Это сработало, когда я изменил 99% на 100%, спасибо

Ánh Nắng Của Em 19.07.2024 12:37

Другие вопросы по теме