当前位置:首页 > CSS

用css制作火车图标

2026-01-08 19:55:10CSS

使用CSS制作火车图标

通过CSS的伪元素、边框和变形属性可以创建一个简化的火车图标。以下是实现方法:

基础结构

HTML部分只需一个div元素作为容器:

<div class="train"></div>

车身部分

.train {
  position: relative;
  width: 120px;
  height: 60px;
  background-color: #3498db;
  border-radius: 10px 30px 10px 10px;
}

车头窗户

使用伪元素创建前窗:

.train::before {
  content: '';
  position: absolute;
  right: 10px;
  top: 15px;
  width: 25px;
  height: 20px;
  background-color: #fff;
  border-radius: 5px;
}

车厢连接处

.train::after {
  content: '';
  position: absolute;
  left: -10px;
  top: 20px;
  width: 10px;
  height: 20px;
  background-color: #2980b9;
  border-radius: 5px 0 0 5px;
}

车轮效果

通过box-shadow创建多个车轮:

.train {
  box-shadow: 
    20px 45px 0 -8px #2c3e50,
    60px 45px 0 -8px #2c3e50,
    100px 45px 0 -8px #2c3e50;
}

完整示例

.train {
  position: relative;
  width: 120px;
  height: 60px;
  background-color: #3498db;
  border-radius: 10px 30px 10px 10px;
  box-shadow: 
    20px 45px 0 -8px #2c3e50,
    60px 45px 0 -8px #2c3e50,
    100px 45px 0 -8px #2c3e50;
}

.train::before {
  content: '';
  position: absolute;
  right: 10px;
  top: 15px;
  width: 25px;
  height: 20px;
  background-color: #fff;
  border-radius: 5px;
}

.train::after {
  content: '';
  position: absolute;
  left: -10px;
  top: 20px;
  width: 10px;
  height: 20px;
  background-color: #2980b9;
  border-radius: 5px 0 0 5px;
}

进阶优化

添加烟雾效果:

.train {
  animation: smoke 2s infinite;
}

@keyframes smoke {
  0% { box-shadow: 0 0 0 0 rgba(255,255,255,0.1); }
  100% { box-shadow: -30px -20px 30px 10px rgba(255,255,255,0); }
}

通过调整尺寸和颜色参数,可以创建不同风格的火车图标。这种方法仅使用CSS,无需图像文件,适合网页性能优化场景。

用css制作火车图标

标签: 图标火车
分享给朋友:

相关文章

css图标制作

css图标制作

CSS 图标制作方法 使用 Unicode 或图标字体 通过引入字体库(如 Font Awesome)或直接使用 Unicode 符号生成图标。例如,Font Awesome 的图标可通过类名调用:…

vue实现图标移动位置

vue实现图标移动位置

实现图标移动位置的方法 在Vue中实现图标移动位置可以通过多种方式,以下是几种常见的方法: 使用CSS过渡动画 通过CSS的transition和transform属性实现平滑移动效果。在Vue模…

vue实现图标加文字

vue实现图标加文字

Vue 实现图标加文字的几种方法 在 Vue 中实现图标加文字的常见方式有多种,可以根据项目需求和使用的图标库选择合适的方法。 使用 Element UI 或 Ant Design Vue 等 U…

vue实现图标点亮

vue实现图标点亮

实现图标点亮的常见方法 在Vue中实现图标点亮效果通常可以通过动态绑定类名或样式、切换图标组件等方式实现。以下是几种常见方案: 使用动态类名绑定 通过v-bind:class或:class动态切换点…

react实现图标拖拽

react实现图标拖拽

实现图标拖拽的基本思路 在React中实现图标拖拽功能,可以通过HTML5的Drag and Drop API结合React的状态管理来完成。核心步骤包括设置可拖拽元素、处理拖拽事件以及更新组件状态。…

用css制作火车图标

用css制作火车图标

使用CSS制作火车图标 火车图标可以通过CSS的伪元素、边框和背景属性组合实现。以下是一个简单的火车图标实现方法: 火车主体部分 .train { width: 120px; he…