当前位置:首页 > CSS

css制作房子

2026-04-01 10:59:33CSS

使用CSS绘制简单房屋

通过CSS的::before::after伪元素结合border属性,可以创建基础的房屋结构。以下是一个纯CSS实现的房屋示例:

<div class="house">
  <div class="roof"></div>
  <div class="wall"></div>
  <div class="door"></div>
  <div class="window"></div>
</div>
.house {
  position: relative;
  width: 200px;
  height: 200px;
  margin: 50px auto;
}

.roof {
  width: 0;
  height: 0;
  border-left: 100px solid transparent;
  border-right: 100px solid transparent;
  border-bottom: 80px solid #b22222;
}

.wall {
  width: 160px;
  height: 120px;
  background: #deb887;
  margin: 0 auto;
}

.door {
  position: absolute;
  bottom: 0;
  left: 50%;
  transform: translateX(-50%);
  width: 40px;
  height: 70px;
  background: #8b4513;
}

.window {
  position: absolute;
  top: 60px;
  left: 50%;
  transform: translateX(-50%);
  width: 50px;
  height: 50px;
  background: #87ceeb;
  border: 3px solid #000;
}

SVG实现房屋图形

对于更复杂的房屋设计,SVG提供更灵活的路径绘制能力:

<svg width="300" height="250" viewBox="0 0 300 250">
  <!-- 屋顶 -->
  <polygon points="150,30 280,120 20,120" fill="#d9534f"/>

  <!-- 墙体 -->
  <rect x="50" y="120" width="200" height="120" fill="#f0ad4e"/>

  <!-- 门 -->
  <rect x="130" y="170" width="40" height="70" fill="#5bc0de"/>
  <circle cx="145" cy="205" r="2" fill="#333"/>

  <!-- 窗户 -->
  <rect x="70" y="140" width="40" height="40" fill="#5cb85c" stroke="#333"/>
  <line x1="90" y1="140" x2="90" y2="180" stroke="#333"/>
  <line x1="70" y1="160" x2="110" y2="160" stroke="#333"/>
</svg>

3D房屋效果

通过CSS transform属性可以创建3D视角的房屋:

.house-3d {
  position: relative;
  width: 200px;
  height: 150px;
  transform-style: preserve-3d;
  transform: perspective(600px) rotateY(20deg);
}

.roof-3d {
  position: absolute;
  width: 200px;
  height: 100px;
  background: #c00;
  transform: rotateX(30deg) translateZ(-50px);
}

.wall-3d {
  position: absolute;
  width: 200px;
  height: 150px;
  background: #e6b800;
  transform: translateZ(50px);
}

动画效果增强

添加CSS动画使房屋更生动:

.window {
  animation: glow 2s infinite alternate;
}

@keyframes glow {
  from { box-shadow: 0 0 5px #fff; }
  to { box-shadow: 0 0 20px #ff0; }
}

.door {
  transition: transform 0.5s;
}

.door:hover {
  transform: translateX(-50%) rotateY(-30deg);
}

响应式设计

使用CSS变量和媒体查询确保房屋在不同设备上显示良好:

css制作房子

:root {
  --house-size: 200px;
}

@media (max-width: 600px) {
  :root {
    --house-size: 150px;
  }
}

.house {
  width: var(--house-size);
  height: var(--house-size);
}

标签: 房子css
分享给朋友:

相关文章

网页制作css

网页制作css

CSS 基础语法 CSS(层叠样式表)用于控制网页的样式和布局。基本语法由选择器和声明块组成: 选择器 { 属性: 值; 属性: 值; } 例如: p { colo…

css制作图标

css制作图标

使用CSS制作图标的方法 使用伪元素和边框 通过CSS的::before和::after伪元素结合border属性可以创建简单的几何形状图标。例如制作一个三角形: .triangle { w…

纯css制作tab菜单

纯css制作tab菜单

纯CSS制作Tab菜单的方法 使用radio input控制切换 通过<input type="radio">和<label>元素配合实现无JavaScript的Tab切换效果…

dw制作css

dw制作css

使用DW(Dreamweaver)制作CSS的步骤 在Adobe Dreamweaver中创建和编辑CSS文件可以通过可视化界面或直接编写代码完成。以下是具体操作方法: 新建CSS文件 打开Drea…

css制作圆

css制作圆

使用CSS制作圆形元素 通过CSS的border-radius属性可以轻松将元素变为圆形。以下是具体实现方法: 基本圆形实现 .circle { width: 100px; height:…

css制作滑动切换

css制作滑动切换

使用CSS实现滑动切换效果 方法一:使用CSS Transition和Transform 通过transition和transform属性实现平滑的滑动动画效果。 .slider-container…