当前位置:首页 > CSS

css制作动漫岛

2026-03-12 10:26:13CSS

CSS 制作动漫岛效果

使用CSS可以创建动漫风格的岛屿效果,主要通过渐变、阴影和形状组合实现。以下是具体实现方法:

岛屿基础形状

使用border-radiusbox-shadow创建岛屿的不规则形状:

.island {
  width: 300px;
  height: 150px;
  background: #8BC34A;
  border-radius: 50% 50% 0 0;
  box-shadow: 
    0 -10px 20px rgba(0,0,0,0.2),
    inset 0 -10px 20px rgba(0,100,0,0.3);
  position: relative;
}

添加立体效果

通过多重阴影和渐变增强立体感:

.island::before {
  content: '';
  position: absolute;
  bottom: -20px;
  left: 10%;
  width: 80%;
  height: 40px;
  background: linear-gradient(to right, #5D4037, #8D6E63);
  border-radius: 0 0 50% 50%;
  box-shadow: 0 5px 15px rgba(0,0,0,0.3);
}

水面效果

使用伪元素创建波浪状水面:

.island::after {
  content: '';
  position: absolute;
  bottom: -50px;
  left: 0;
  width: 100%;
  height: 30px;
  background: #00BCD4;
  border-radius: 50%;
  opacity: 0.8;
  box-shadow: 
    0 10px 15px -5px rgba(0,0,0,0.2),
    inset 0 5px 10px rgba(255,255,255,0.5);
}

动画效果

添加CSS动画使水面波动:

css制作动漫岛

@keyframes wave {
  0% { transform: translateY(0) scaleX(1); }
  50% { transform: translateY(-5px) scaleX(1.05); }
  100% { transform: translateY(0) scaleX(1); }
}

.island::after {
  animation: wave 3s ease-in-out infinite;
}

完整示例

<div class="island"></div>

<style>
.island {
  width: 300px;
  height: 150px;
  background: #8BC34A;
  border-radius: 50% 50% 0 0;
  box-shadow: 
    0 -10px 20px rgba(0,0,0,0.2),
    inset 0 -10px 20px rgba(0,100,0,0.3);
  position: relative;
  margin: 100px auto;
}

.island::before {
  content: '';
  position: absolute;
  bottom: -20px;
  left: 10%;
  width: 80%;
  height: 40px;
  background: linear-gradient(to right, #5D4037, #8D6E63);
  border-radius: 0 0 50% 50%;
  box-shadow: 0 5px 15px rgba(0,0,0,0.3);
}

.island::after {
  content: '';
  position: absolute;
  bottom: -50px;
  left: 0;
  width: 100%;
  height: 30px;
  background: #00BCD4;
  border-radius: 50%;
  opacity: 0.8;
  box-shadow: 
    0 10px 15px -5px rgba(0,0,0,0.2),
    inset 0 5px 10px rgba(255,255,255,0.5);
  animation: wave 3s ease-in-out infinite;
}

@keyframes wave {
  0% { transform: translateY(0) scaleX(1); }
  50% { transform: translateY(-5px) scaleX(1.05); }
  100% { transform: translateY(0) scaleX(1); }
}
</style>

进阶技巧

  • 使用clip-path创建更复杂的岛屿形状
  • 添加云朵元素增强场景感
  • 通过transform: skew()制造倾斜效果
  • 使用CSS变量统一颜色主题

通过组合这些CSS技术,可以创建出风格化的动漫岛屿场景。调整颜色和形状参数可获得不同风格的岛屿效果。

标签: 动漫css
分享给朋友:

相关文章

css样式制作

css样式制作

CSS 样式制作基础 CSS(层叠样式表)用于控制网页的视觉呈现。通过选择器和属性组合,可以精确调整元素的布局、颜色、字体等样式。 选择器类型 元素选择器:p { color: red; } 选中…

div css制作导航

div css制作导航

使用div和CSS制作导航栏 导航栏是网站的重要组成部分,用于帮助用户快速找到所需内容。以下是使用div和CSS制作导航栏的方法: HTML结构 创建一个基本的导航栏HTML结构,使用div和ul元…

表格制作css

表格制作css

基础表格样式 使用CSS可以轻松地为HTML表格添加样式。以下是一个基础表格的HTML和CSS示例: <table class="basic-table"> <thead>…

css导航制作ppt

css导航制作ppt

CSS导航制作PPT的方法 使用CSS制作导航菜单,并将其应用于PPT演示中,可以通过以下方法实现: 设计导航菜单结构 在HTML中创建导航菜单的基本结构,通常使用<ul>和<li…

如何制作css雪碧图

如何制作css雪碧图

什么是CSS雪碧图 CSS雪碧图(CSS Sprite)是一种将多个小图标或背景图像合并到一张大图中的技术,通过CSS的background-position属性控制显示特定部分。这种技术可以减少HT…

怎么制作风水罗盘css

怎么制作风水罗盘css

制作风水罗盘CSS 使用CSS创建一个风水罗盘(八卦罗盘)需要结合HTML和CSS技术,通过层叠样式表绘制罗盘的各个部分。以下是实现方法: 基本结构 创建HTML结构,包含罗盘的外圆、内圆、八卦符号…