当前位置:首页 > 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动画让小船产生漂浮效果:

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); }
}

进阶版本带细节

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

css小船制作教程

.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的浏览器提供备选方案:

.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图标制作教程

使用字体图标(Font Icons) 字体图标是将图标作为字体文件引入项目,通过CSS控制样式和大小。常见的字体图标库包括Font Awesome、Material Icons等。 引入字体图标库的…

css横线制作教程

css横线制作教程

使用 border 属性制作横线 通过 border 属性可以快速创建横线。设置元素的 border-top 或 border-bottom 为所需样式,调整颜色、粗细和样式即可。 .horizon…

css制作教程

css制作教程

CSS 基础语法 CSS(层叠样式表)用于控制网页的样式和布局。基本语法由选择器和声明块组成。选择器指定要样式化的HTML元素,声明块包含一个或多个属性-值对。 选择器 { 属性: 值; 属…

css继承制作教程

css继承制作教程

CSS继承的基本概念 CSS继承是指某些CSS属性能够自动从父元素传递到子元素。例如,设置body的字体颜色为黑色,所有子元素默认会继承该颜色,除非显式覆盖。理解继承机制可以简化样式表的编写。 可继…

css小船制作

css小船制作

CSS小船制作方法 使用CSS绘制小船主要涉及利用div元素和CSS样式属性(如border、transform、box-shadow)组合成船体和船帆的图形效果。 船体部分 船体通常通过底部圆角矩…

css图标制作教程

css图标制作教程

使用CSS制作图标的方法 纯CSS绘制图标 通过CSS的border、transform和伪元素等属性直接绘制简单图标。例如绘制三角形: .triangle { width: 0; he…