当前位置:首页 > CSS

css小船制作教程

2026-01-28 15:42:25CSS

使用CSS绘制小船

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

<!DOCTYPE html>
<html>
<head>
    <style>
        .boat {
            width: 200px;
            height: 100px;
            background-color: #8B4513;
            clip-path: polygon(0% 100%, 20% 40%, 80% 40%, 100% 100%);
            position: relative;
            margin: 100px auto;
        }

        .sail {
            width: 80px;
            height: 120px;
            background-color: #FFFFFF;
            clip-path: polygon(50% 0%, 0% 100%, 100% 100%);
            position: absolute;
            top: -120px;
            left: 60px;
        }

        .wave {
            width: 100%;
            height: 20px;
            background-color: #1E90FF;
            border-radius: 50%;
            position: absolute;
            bottom: -10px;
        }
    </style>
</head>
<body>
    <div class="boat">
        <div class="sail"></div>
        <div class="wave"></div>
    </div>
</body>
</html>

添加动画效果

通过CSS动画让小船产生漂浮效果:

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

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

.wave {
    animation: wave 2s linear infinite;
}

@keyframes wave {
    0% { transform: translateX(0); }
    100% { transform: translateX(-20px); }
}

进阶版本带细节

添加更多细节提升视觉效果:

.boat::after {
    content: "";
    position: absolute;
    width: 10px;
    height: 150px;
    background: #A0522D;
    left: 50%;
    transform: translateX(-50%);
    bottom: 100%;
}

.sail::after {
    content: "";
    position: absolute;
    width: 2px;
    height: 120px;
    background: #000;
    left: 50%;
    transform: translateX(-50%);
}

响应式调整

使用CSS变量实现尺寸调整:

:root {
    --boat-width: 200px;
    --boat-height: 100px;
}

@media (max-width: 600px) {
    :root {
        --boat-width: 150px;
        --boat-height: 75px;
    }
}

浏览器兼容方案

为不支持clip-path的浏览器提供备选方案:

css小船制作教程

.boat {
    background: linear-gradient(to bottom, transparent 40%, #8B4513 40%);
}

.sail {
    background: linear-gradient(to right bottom, transparent 50%, #FFFFFF 50%),
                linear-gradient(to left bottom, transparent 50%, #FFFFFF 50%);
}

分享给朋友:

相关文章

css继承制作教程

css继承制作教程

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

css小船制作

css小船制作

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

css图标制作教程

css图标制作教程

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

前端css制作教程

前端css制作教程

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

css图片制作教程

css图片制作教程

CSS图片制作教程 CSS可以用于创建和操作图片效果,包括形状、渐变、滤镜等。以下是几种常见的CSS图片制作方法: 使用CSS创建基本形状 通过CSS的border-radius、clip-path…

css继承制作教程

css继承制作教程

CSS 继承的基本概念 CSS 继承是指子元素自动获取父元素的某些样式属性值,无需重复定义。继承机制可以减少代码冗余,提高开发效率。 可继承的常见属性 以下属性通常会被子元素继承:…