使用纯HTML和CSS绘制圣诞树:打造网页中的冬日奇景

HTML & CSS 实现节日圣诞树:一步步打造你的冬季主题网页

在这篇文章中,我们将使用纯HTML和CSS创建一棵节日圣诞树。通过简单的代码,您可以在网页上实现一棵带有星星、彩球装饰的圣诞树,为网站增添节日氛围。

实现思路

  1. **树结构**:利用CSS的`border`属性绘制不同大小的三角形来组成圣诞树的分层结构。

  2. **树干**:使用一个小矩形模拟树干,增加圣诞树的稳定感。

  3. **装饰星星**:用金色字体绘制顶部的星星,吸引眼球。

  4. **彩球装饰**:在树上添加不同颜色的圆形装饰球,让页面更具节日氛围。

代码实现

以下是完整的HTML和CSS代码:

```html

<!DOCTYPE html>

<html lang="en">

<head>

<meta charset="UTF-8">

<meta name="viewport" content="width=device-width, initial-scale=1.0">

<title>Festive Christmas Tree</title>

<style>

body {

display: flex;

justify-content: center;

align-items: center;

height: 100vh;

margin: 0;

background: linear-gradient(to bottom, #001f3f, #1d1d1d);

color: white;

font-family: 'Arial', sans-serif;

}

.tree {

position: relative;

width: 0;

height: 0;

border-left: 60px solid transparent;

border-right: 60px solid transparent;

border-bottom: 100px solid #0a6b08;

margin-top: 20px;

}

.tree:before,

.tree:after {

content: '';

position: absolute;

left: -40px;

width: 0;

height: 0;

border-left: 80px solid transparent;

border-right: 80px solid transparent;

}

.tree:before {

top: -70px;

border-bottom: 120px solid #096508;

}

.tree:after {

top: -140px;

border-bottom: 140px solid #085507;

}

.trunk {

width: 30px;

height: 50px;

background-color: #4a2a0a;

margin: -15px auto 0;

}

.star {

position: absolute;

top: -170px;

left: -10px;

font-size: 35px;

color: gold;

}

.ornament {

position: absolute;

width: 12px;

height: 12px;

border-radius: 50%;

}

.ornament:nth-child(2) { top: -130px; left: -20px; background-color: red; }

.ornament:nth-child(3) { top: -110px; left: 40px; background-color: yellow; }

.ornament:nth-child(4) { top: -90px; left: -30px; background-color: blue; }

.ornament:nth-child(5) { top: -60px; left: 20px; background-color: purple; }

.ornament:nth-child(6) { top: -40px; left: 50px; background-color: pink; }

.ornament:nth-child(7) { top: -120px; left: -50px; background-color: cyan; }

</style>

</head>

<body>

<div class="tree">

<div class="star">★</div>

<div class="ornament"></div>

<div class="ornament"></div>

<div class="ornament"></div>

<div class="ornament"></div>

<div class="ornament"></div>

<div class="ornament"></div>

<div class="ornament"></div>

</div>

<div class="trunk"></div>

</body>

</html>

相关推荐
+VX:Fegn089516 小时前
计算机毕业设计|基于springboot + vue蛋糕店管理系统(源码+数据库+文档)
前端·数据库·vue.js·spring boot·课程设计
Nicander17 小时前
我给 Excalidraw 做了一个本地工作区:DrawSpace
前端·开源
linux_cfan19 小时前
17 · 引擎适配器全景:HLS/DASH/Vimeo/Mux/Cast
前端·javascript·音视频
计算机魔术师19 小时前
烧掉2780亿美元还不够?OpenAI的资本豪赌让人头皮发麻
前端
IT_陈寒20 小时前
Java线程池用错参数,我的服务居然悄悄崩溃了
前端·人工智能·后端
卡布鲁20 小时前
React useMemo 与 useCallback 完全指南:原理、场景与避坑
前端·react.js
子非鱼a21 小时前
【XSS】乌托邦·王的实验室
html·xss
碳基修炼21 小时前
排查记:本地 devServer 是 http,浏览器却把 302 重定向升级成了 https
前端·http
步行cgn21 小时前
Spring p 命名空间注入详解
java·前端·spring
何何____21 小时前
Vue 生命周期详解
前端·javascript