当前位置:首页 > CSS

css小船制作教程

2026-02-13 10:01:30CSS

使用CSS绘制小船

通过CSS的clip-path属性和基本形状可以绘制简单的小船图形。以下是一个基础的CSS小船实现方案:

css小船制作教程

<div class="boat"></div>
.boat {
  width: 200px;
  height: 100px;
  background-color: #8B4513; /* 棕色船身 */
  clip-path: polygon(
    0% 50%,
    50% 0%,
    100% 50%,
    80% 100%,
    20% 100%
  );
  position: relative;
}

.boat::after {
  content: "";
  position: absolute;
  width: 5px;
  height: 80px;
  background-color: #A0522D;
  left: 50%;
  top: -80px;
  transform: translateX(-50%);
}

添加水面效果

为小船添加波浪背景增强视觉效果:

css小船制作教程

body {
  display: flex;
  justify-content: center;
  align-items: center;
  height: 100vh;
  background: linear-gradient(to bottom, #87CEEB 50%, #1E90FF);
}

.wave {
  position: absolute;
  bottom: 0;
  width: 100%;
  height: 100px;
  background: url('data:image/svg+xml;utf8,<svg viewBox="0 0 1200 120" xmlns="http://www.w3.org/2000/svg" preserveAspectRatio="none"><path d="M0,0V46.29c47.79,22.2,103.59,32.17,158,28,70.36-5.37,136.33-33.31,206.8-37.5C438.64,32.43,512.34,53.67,583,72.05c69.27,18,138.3,24.88,209.4,13.08,36.15-6,69.85-17.84,104.45-29.34C989.49,25,1113-14.29,1200,52.47V0Z" opacity=".25" fill="%231E90FF"/><path d="M0,0V15.81C13,36.92,27.64,56.86,47.69,72.05,99.41,111.27,165,111,224.58,91.58c31.15-10.15,60.09-26.07,89.67-39.8,40.92-19,84.73-46,130.83-49.67,36.26-2.85,70.9,9.42,98.6,31.56,31.77,25.39,62.32,62,103.63,73,40.44,10.79,81.35-6.69,119.13-24.28s75.16-39,116.92-43.05c59.73-5.85,113.28,22.88,168.9,38.84,30.2,8.66,59,6.17,87.09-7.5,22.43-10.89,48-26.93,60.65-49.24V0Z" fill="%231E90FF"/></svg>');
  background-size: 1200px 100px;
  animation: wave 10s linear infinite;
}

@keyframes wave {
  0% { background-position-x: 0; }
  100% { background-position-x: 1200px; }
}

进阶帆船版本

更复杂的帆船实现方案:

<div class="sailboat">
  <div class="hull"></div>
  <div class="sail"></div>
  <div class="mast"></div>
</div>
.sailboat {
  position: relative;
  width: 200px;
  height: 200px;
}

.hull {
  position: absolute;
  bottom: 0;
  width: 150px;
  height: 40px;
  background-color: #5D4037;
  border-radius: 0 0 20px 20px;
  clip-path: polygon(0 0, 100% 0, 80% 100%, 20% 100%);
}

.mast {
  position: absolute;
  left: 50%;
  bottom: 40px;
  width: 4px;
  height: 120px;
  background-color: #795548;
  transform: translateX(-50%);
}

.sail {
  position: absolute;
  left: 50%;
  top: 20px;
  width: 0;
  height: 0;
  border-left: 80px solid transparent;
  border-right: 20px solid transparent;
  border-bottom: 100px solid #ECEFF1;
  transform: translateX(-50%);
}

动画效果

为小船添加漂浮动画:

.boat {
  animation: float 3s ease-in-out infinite;
}

@keyframes float {
  0%, 100% { transform: translateY(0); }
  50% { transform: translateY(-20px); }
}

这些CSS技术结合使用可以创建从简单到复杂的不同小船效果,通过调整尺寸、颜色和形状参数可获得各种风格的船只图形。

分享给朋友:

相关文章

css制作教程

css制作教程

CSS基础入门 CSS(层叠样式表)用于控制网页的视觉表现,包括布局、颜色、字体等。以下是一个系统化的学习路径: 选择器与基本语法 CSS规则由选择器和声明块组成: 选择器 { 属性: 值…

css继承制作教程

css继承制作教程

CSS继承制作教程 CSS继承是样式从父元素传递到子元素的机制,合理利用可以减少重复代码。以下是实现CSS继承的几种方法和注意事项: 理解CSS继承的基本原理 CSS中某些属性默认具有继承性,如f…

css小船制作

css小船制作

CSS小船制作方法 使用CSS绘制小船可以通过纯代码实现,无需图片。以下是两种常见的小船样式制作方法: 基础小船样式 通过div元素和CSS的border属性创建三角形船体和矩形船帆: .bo…

css图标制作教程

css图标制作教程

CSS图标制作方法 CSS图标可以通过多种方式实现,以下是几种常见的技术方案: 纯CSS绘制图标 利用CSS的border、transform和伪元素等属性绘制简单图形: .arrow-icon…

css横线制作教程

css横线制作教程

使用 border 属性制作横线 通过设置元素的 border-top 或 border-bottom 属性可以快速生成横线。例如: .hr-border { border-top: 1px…

前端css制作教程

前端css制作教程

CSS 基础概念 CSS(层叠样式表)用于控制网页的视觉呈现,包括布局、颜色、字体等。通过选择器和属性定义样式规则。 引入 CSS 的三种方式 内联样式:直接在 HTML 标签中使用 style…