CSS3의 box-shadow 속성으로 구현된 그림자 효과 요약
이 글은 CSS3의 box-shadow 속성에 의해 달성된 그림자 효과에 대한 요약을 제공합니다. 이는 특정 참고 가치가 있으므로 도움이 필요한 친구들이 참고할 수 있기를 바랍니다.
CSS3 box-shadow 속성은 요소의 하나 이상의 그림자 효과를 설명하는 데 사용됩니다. 이 속성을 사용하면 원하는 거의 모든 그림자 효과를 얻을 수 있습니다. 그러나 box-shadow 속성 구문과 값은 매우 유연하여 초보자가 이해하기에는 다소 어렵습니다. 오늘은 box-shadow 속성의 구문과 다양한 그림자 효과를 요약해 보겠습니다.
Syntax
/* offset-x | offset-y | color */ box-shadow: 60px -16px teal; /* offset-x | offset-y | blur-radius | color */ box-shadow: 10px 5px 5px black; /* offset-x | offset-y | blur-radius | spread-radius | color */ box-shadow: 2px 2px 2px 1px rgba(0, 0, 0, 0.2); /* inset | offset-x | offset-y | color */ box-shadow: inset 5em 1em gold; /* Any number of shadows, separated by commas */ box-shadow: 3px 3px red, -1em 0 0.4em olive; /* Global keywords */ box-shadow: inherit; box-shadow: initial; box-shadow: unset;
값 설명:
inset: 기본 그림자는 테두리 외부에 있습니다. 삽입을 사용한 후 그림자는 테두리(투명 테두리라도) 내부, 배경 위와 내용 아래에 나타납니다. 어떤 사람들은 이 값을 마지막에 넣는 것을 좋아하고 브라우저도 이를 지원합니다.
인터넷에서 몇 장의 사진을 찾았으니 그에 맞춰서 보시면 이해가 쉬울 것입니다.
좀 더 구체적으로 설명하자면:
div { width: 150px; height: 150px; background-color: #fff; box-shadow: 120px 80px 40px 20px #0ff; /* 顺序为: offset-x, offset-y, blur-size, spread-size, color */ /* blur-size 和 spread-size 是可选的 (默认为 0) */ }
다음은 그림입니다.
가장 간단한 일반 효과
다음은 가장 간단한 그림자 효과 중 일부입니다. 또한 봐 코드에서 매우 이해하기 쉽습니다:
HTML
<div class="flex"> <div class="flex-item"> <h3 id="内阴影示例">内阴影示例</h3> <div class="box boxshadow1"></div> </div> <div class="flex-item"> <h3 id="边内影示例">3边内影示例</h3> <div class="box boxshadow2"></div> </div> <div class="flex-item"> <h3 id="外阴影示例">外阴影示例</h3> <div class="box boxshadow3"></div> </div> <div class="flex-item"> <h3 id="右下外阴影示例">右下外阴影示例</h3> <div class="box boxshadow4"></div> </div> <div class="flex-item"> <h3 id="扩大阴影示例">扩大阴影示例</h3> <div class="box boxshadow5"></div> </div> <div class="flex-item"> <h3 id="半透明阴影色示例">半透明阴影色示例</h3> <div class="box boxshadow6"></div> </div> </div>
CSS
.flex{display:flex;flex-wrap:wrap;} .flex-item{margin-right:30px;} .box { background-color: #CCCCCC; border-radius:10px; width: 200px; height: 200px; } .boxshadow1{ box-shadow:inset 0px 0px 5px 1px #000; } .boxshadow2{ box-shadow:inset 0 1px 2px 1px #000; } .boxshadow3{box-shadow:0 0 10px #000;} .boxshadow4{box-shadow:2px 2px 5px #000;} .boxshadow5{box-shadow:0 0 5px 15px #000;} .boxshadow6{box-shadow: 12px 12px 2px 1px rgba(0, 0, 255, .2);}
효과는 다음과 같습니다
단면 그림자 효과
단면 그림자 효과는 몇 가지 효과를 줄 수 있습니다. , 특수 장면의 획 및 작은 그림자와 같은 또 다른 예는 일부 전환 색상입니다.
HTML
<div class="flex"> <div class="flex-item"> <h3 id="上边内阴影示例">上边内阴影示例</h3> <div class="box boxshadow1"></div> </div> <div class="flex-item"> <h3 id="右边内阴影示例">右边内阴影示例</h3> <div class="box boxshadow2"></div> </div> <div class="flex-item"> <h3 id="下边外阴影示例">下边外阴影示例</h3> <div class="box boxshadow3"></div> </div> <div class="flex-item"> <h3 id="右边外阴影示例">右边外阴影示例</h3> <div class="box boxshadow4"></div> </div> <div class="flex-item"> <h3 id="下边细线示例">下边细线示例</h3> <div class="box boxshadow5"></div> </div> </div>
CSS
.flex{display:flex;flex-wrap:wrap;} .flex-item{margin-right:30px;} .box { background-color: #CCCCCC; width: 200px; height: 200px; } .boxshadow1{ box-shadow:inset 0px 15px 10px -15px #000; } .boxshadow2{ box-shadow:inset -15px 0px 10px -15px #000;} .boxshadow3{box-shadow:0px 12px 8px -12px #000; border-radius:10px; } .boxshadow4{box-shadow:3px 0 8px -4px #000;} .boxshadow5{ box-shadow: inset 0px -1px 0px 0px rgb(0, 0, 0) ;}
효과는 다음과 같습니다
이중 가장자리 그림자 및 다중 그림자 효과
HTML
<div class="flex"> <div class="flex-item"> <h3 id="上下边内阴影示例">上下边内阴影示例</h3> <div class="box boxshadow1"></div> </div> <div class="flex-item"> <h3 id="左右边外阴影示例">左右边外阴影示例</h3> <div class="box boxshadow2"></div> </div> <div class="flex-item"> <h3 id="多层阴影示例">多层阴影示例</h3> <div class="box boxshadow3"></div> </div> </div>
CSS
.flex{display:flex;flex-wrap:wrap;} .flex-item{margin-right:30px;} .box { background-color: #CCCCCC; width: 200px; height: 200px; } .boxshadow1{ box-shadow:inset 0px 15px 15px -15px #000, inset 0px -15px 15px -15px #000; } .boxshadow2{ box-shadow:15px 0 15px -15px #000, -15px 0 15px -15px #000; } .boxshadow3{ border-radius:10px; box-shadow:0px 0px 0px 3px #bb0a0a, 0px 0px 0px 6px #2e56bf, 0px 0px 0px 9px #ea982e; }
효과 다음과 같습니다
기타 흥미로운 그림자:
의사 요소 ::before 및 ::after를 사용하면 사진에서만 얻을 수 있는 매우 사실적인 그림자 효과를 만들 수 있습니다. 예를 들어 보겠습니다.
HTML
<div class="box11 shadow"></div>
CSS
.box11 { width: 300px; height: 100px; background: #ccc; border-radius: 10px; margin: 10px; } .shadow { position: relative; max-width: 270px; box-shadow: 0px 1px 4px rgba(0,0,0,0.3), 0px 0px 20px rgba(0,0,0,0.1) inset; } .shadow::before, .shadow::after { content:""; position:absolute; z-index:-1; } .shadow::before, .shadow::after { content:""; position:absolute; z-index:-1; bottom:15px; left:10px; width:50%; height:20%; } .shadow::before, .shadow::after { content:""; position:absolute; z-index:-1; bottom:15px; left:10px; width:50%; height:20%; box-shadow:0 15px 10px rgba(0, 0, 0, 0.7); transform:rotate(-3deg); } .shadow::after{ right:10px; left:auto; transform:rotate(3deg); }
효과는 다음과 같습니다
추가 효과:
HTML
<div class="wrap"> <div class="box box1 shadow1"> <h3 id="Shadow-nbsp">Shadow 1</h3> </div> <div class="box box2 shadow2"> <h3 id="Shadow-nbsp">Shadow 2</h3> </div> <div class="box box3 shadow3"> <h3 id="Shadow-nbsp">Shadow 3</h3> </div> <div class="box box4 shadow4"> <h3 id="Shadow-nbsp">Shadow 4</h3> </div> <div class="box box5 shadow5"> <h3 id="Shadow-nbsp">Shadow 5</h3> </div> <div class="box box6 shadow6"> <h3 id="Shadow-nbsp">Shadow 6</h3> </div> <div class="box box7 shadow7"> <h3 id="Shadow-nbsp">Shadow 7</h3> </div> <div class="box box8 shadow8"> <h3 id="Shadow-nbsp">Shadow 8</h3> </div> </div>
CSS
body{ background:#E6EEF6; } .wrap{ margin-left:20px; } .box{ width:40%; height:200px; float:left; background-color:white; margin:25px 15px; border-radius:5px; } .box h3{ font-family: 'Didact Gothic', sans-serif; font-weight:normal; text-align:center; padding-top:60px; color:#fff; } .box1{ background-color: #EBA39E; } .box2{ background-color: #EDE89A; } .box3{ background-color: #9EEBA1; } .box4{ background-color: #9EEBBF; } .box5{ background-color: #9ED9EB; } .box6{ background-color: #9EB3EB; } .box7{ background-color: #DB9EEB; } .box8{ background-color: #C49EEB; } .shadow1, .shadow2, .shadow3,.shadow4,.shadow5,.shadow6,.shadow7,.shadow8{ position:relative; } .shadow1,.shadow2,.shadow3,.shadow4,.shadow5,.shadow6,.shadow7,.shadow8{ box-shadow:0 1px 4px rgba(0, 0, 0, 0.3), 0 0 20px rgba(0, 0, 0, 0.1) inset; } /*****************************************************************dashed border ****************************************************************/ .shadow1 h3, .shadow2 h3, .shadow3 h3, .shadow4 h3, .shadow5 h3, .shadow6 h3, .shadow7 h3, .shadow8 h3{ width:87%; height:100px; margin-left:6%; border:2px dashed #F7EEEE; border-radius:5px; } /**************************************************************** *styling shadows ****************************************************************/ .shadow1:before, .shadow1:after{ position:absolute; content:""; bottom:12px;left:15px;top:80%; width:45%; background:#9B7468; z-index:-1; -webkit-box-shadow: 0 20px 15px #9B7468; -moz-box-shadow: 0 20px 15px #9B7468; box-shadow: 0 20px 15px #9B7468; -webkit-transform: rotate(-6deg); -moz-transform: rotate(-6deg); transform: rotate(-6deg); } .shadow1:after{ -webkit-transform: rotate(6deg); -moz-transform: rotate(6deg); transform: rotate(6deg); right: 15px;left: auto; } .shadow2:before{ position:absolute; content:""; width:80%; top:140px;bottom:15px;left:30px; background-color:#9F8641; z-index:-1; -webkit-box-shadow:0 23px 17px 0 #9F8641; -moz-box-shadow:0 23px 17px 0 #9F8641; box-shadow: 0 23px 17px 0 #9F8641; -webkit-transform:rotate(-4deg); -moz-transform:rotate(-4deg); transform:rotate(-4deg); } .shadow3:before, .shadow3:after{ content:""; position:absolute; bottom:0;top:2px;left:15px;right:15px; z-index:-1; border-radius:100px/30px; -webkit-box-shadow:0 0 30px 2px #479F41; -moz-box-shadow:0 0 30px 2px #479F41; box-shadow: 0 0 30px 2px #479F41; } .shadow4:before, .shadow4:after{ position:absolute; content:""; top:14px;bottom:14px;left:0;right:0; box-shadow:0 0 25px 3px #548E7F; border-radius:100px/10px; z-index:-1; } .shadow5:before, .shadow5:after{ position:absolute; content:""; box-shadow:0 10px 25px 20px #518C96; top:40px;left:10px;bottom:50px; width:15%; z-index:-1; -webkit-transform: rotate(-8deg); -moz-transform: rotate(-8deg); transform: rotate(-8deg); } .shadow5:after{ -webkit-transform: rotate(8deg); -moz-transform: rotate(8deg); transform: rotate(8deg); right: 10px;left: auto; } .shadow6:before, .shadow6:after{ position:absolute; content:""; top:100px;bottom:5px;left:30px;right:30px; z-index:-1; box-shadow:0 0 40px 13px #486685; border-radius:100px/20px; } .shadow7:before, .shadow7:after{ position:absolute; content:"1"; top:25px;left:20px;bottom:150px; width:80%; z-index:-1; -webkit-transform: rotate(-6deg); -moz-transform: rotate(-6deg); transform: rotate(-6deg); } .shadow7:before{ box-shadow:10px -10px 30px 15px #984D8E; } .shadow7:after{ -webkit-transform: rotate(7deg); -moz-transform: rotate(7deg); transform: rotate(7deg); bottom: 25px;top: auto; box-shadow:10px 10px 30px 15px #984D8E; } .shadow8{ box-shadow: -6px -6px 8px -4px rgba(250,254,118,0.75), 6px -6px 8px -4px rgba(254,159,50,0.75), 6px 6px 8px -4px rgba(255,255,0,0.75), 6px 6px 8px -4px rgba(0,0,255,2.75); }
효과는 다음과 같습니다
위 내용은 CSS3의 box-shadow 속성으로 구현된 그림자 효과 요약의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

핫 AI 도구

Undresser.AI Undress
사실적인 누드 사진을 만들기 위한 AI 기반 앱

AI Clothes Remover
사진에서 옷을 제거하는 온라인 AI 도구입니다.

Undress AI Tool
무료로 이미지를 벗다

Clothoff.io
AI 옷 제거제

Video Face Swap
완전히 무료인 AI 얼굴 교환 도구를 사용하여 모든 비디오의 얼굴을 쉽게 바꾸세요!

인기 기사

뜨거운 도구

메모장++7.3.1
사용하기 쉬운 무료 코드 편집기

SublimeText3 중국어 버전
중국어 버전, 사용하기 매우 쉽습니다.

스튜디오 13.0.1 보내기
강력한 PHP 통합 개발 환경

드림위버 CS6
시각적 웹 개발 도구

SublimeText3 Mac 버전
신 수준의 코드 편집 소프트웨어(SublimeText3)

뜨거운 주제











그것은#039; VUE 팀에게 그것을 끝내는 것을 축하합니다. 나는 그것이 막대한 노력과 오랜 시간이라는 것을 알고 있습니다. 모든 새로운 문서도 있습니다.

최근 Bitcoin의 가격이 20k 달러가 넘는 USD가 최근에 등반되면서 최근 30k를 끊었으므로 Ethereum을 만드는 데 깊이 다이빙을 할 가치가 있다고 생각했습니다.

나는 누군가이 매우 합법적 인 질문으로 글을 썼습니다. Lea는 브라우저에서 유효한 CSS 속성 자체를 얻는 방법에 대해 블로그를 작성했습니다. 이는 이와 같습니다.

다른 날, 나는 Corey Ginnivan의 웹 사이트에서 스크롤 할 때 카드 모음이 서로 쌓이는 것을 발견했습니다.

WordPress 편집기에서 사용자에게 직접 문서를 표시 해야하는 경우 가장 좋은 방법은 무엇입니까?

목표가 귀하의 사이트를 동시에 다른 크기로 표시하는 이러한 데스크탑 앱이 많이 있습니다. 예를 들어, 글을 쓸 수 있습니다

플렉스 레이아웃의 보라색 슬래시 영역에 대한 질문 플렉스 레이아웃을 사용할 때 개발자 도구 (d ...)와 같은 혼란스러운 현상이 발생할 수 있습니다.
