当前位置:首页 > CSS

css制作内阴影

2026-04-02 15:55:25CSS

使用 box-shadow 属性制作内阴影

在 CSS 中,box-shadow 属性不仅可以创建外阴影,还可以通过 inset 关键字实现内阴影效果。语法如下:

box-shadow: inset [水平偏移] [垂直偏移] [模糊半径] [扩展半径] [颜色];

示例代码:

css制作内阴影

div {
  width: 200px;
  height: 200px;
  background-color: #f0f0f0;
  box-shadow: inset 5px 5px 10px rgba(0, 0, 0, 0.3);
}

多阴影叠加效果

通过逗号分隔多个 box-shadow 值,可以叠加复杂的内阴影效果:

div {
  box-shadow: 
    inset 3px 3px 5px rgba(0, 0, 0, 0.2),
    inset -3px -3px 5px rgba(255, 255, 255, 0.8);
}

配合伪元素增强立体感

使用 ::before::after 伪元素可以创建更细腻的内阴影层次:

css制作内阴影

div {
  position: relative;
  width: 200px;
  height: 200px;
  background: #e0e0e0;
}

div::after {
  content: "";
  position: absolute;
  top: 5px;
  left: 5px;
  right: 5px;
  bottom: 5px;
  box-shadow: inset 0 0 15px rgba(0, 0, 0, 0.5);
}

文字内阴影效果

text-shadow 不支持内阴影,但可以通过背景裁剪实现类似效果:

h1 {
  color: transparent;
  background: linear-gradient(45deg, #333, #999);
  -webkit-background-clip: text;
  background-clip: text;
  text-shadow: 1px 1px 2px rgba(0, 0, 0, 0.3);
}

SVG 滤镜方案

对于特殊的内阴影需求,可以使用 SVG 滤镜:

<svg width="0" height="0">
  <filter id="inner-shadow">
    <feOffset dx="2" dy="2"/>
    <feGaussianBlur stdDeviation="3" result="offset-blur"/>
    <feComposite operator="out" in="SourceGraphic" in2="offset-blur"/>
  </filter>
</svg>

<style>
  div {
    filter: url(#inner-shadow);
  }
</style>

这些方法涵盖了从简单到复杂的内阴影实现方案,可根据具体设计需求选择合适的方式。

标签: 阴影css
分享给朋友:

相关文章

css 制作石头

css 制作石头

使用CSS制作石头效果 通过CSS的border-radius、box-shadow和background属性可以模拟石头的自然外观。以下是一个简单实现: <div class="stone"…

css制作钢琴块

css制作钢琴块

使用CSS制作钢琴块 钢琴块可以通过HTML和CSS的配合实现,主要利用flexbox布局和伪元素来模拟钢琴的黑白键排列。 HTML结构 <div class="piano"> &l…

制作 .css

制作 .css

创建 CSS 文件的基本步骤 新建一个文本文件,将其保存为 .css 扩展名(例如 style.css)。使用纯文本编辑器(如 Notepad++、VS Code 或 Sublime Text)编写…

css制作春联

css制作春联

使用CSS制作春联的方法 基础布局与样式 春联通常由一对垂直排列的红色对联和顶部的横批组成。使用CSS的flexbox布局可以轻松实现这种结构。创建一个父容器,内部包含三个子元素:横批、上联和下联。…

css制作表格

css制作表格

CSS 制作表格的方法 使用 CSS 可以灵活地创建和样式化表格,以下是几种常见的方法: 使用 HTML 表格标签结合 CSS 样式 通过 HTML 的 <table>、<tr&g…

css怎么制作表格

css怎么制作表格

使用HTML和CSS制作表格 在HTML中,表格由<table>标签定义,结合CSS可以灵活控制样式。 基本HTML结构: <table> <tr>…