作为一个WEB小萌新,自学了有一段时间,总是感觉停滞不前。最近反思中,想到前贤一句话:书读百遍其义自见。说到底,还是项目做的少,如果做多了,想必自然会得心应手。

利用HTML5+CSS3绘制HTML5的Logo

<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>Document</title>
</head>
<body> </body>
</html>

以上为H5基本样式。

【项目分析】

1定位出整个页面背景区域,并实现背景光束

2定义logo样式,并画出盾牌的左半边

3画出盾牌的右半边

4画出浅橘色区域

5画出“5”的左半边

6画出“5”的右半边

7用色块遮盖多余的地方

8在盾牌上添加“HTML”字样

【代码实现】

先新建一个文件夹,创建一个CSS文件夹,内新建一个style.css的文件 。创建一个images文件夹,内放需要的图片,在根目录新建一个 index.html文件,用来存放html代码。

一、html架构(整体 html 代码)

<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<link rel="stylesheet" type="text/css" href="css/style.css">
<title>Document</title>
</head>
<body>
<div class="bg"><!-- logo最外层的盒子div -->
<div class="beam" style="transform:rotate(5deg)"></div>
<div class="beam" style="transform:rotate(15deg)"></div>
<div class="beam" style="transform:rotate(25deg)"></div>
<div class="beam" style="transform:rotate(35deg)"></div>
<div class="beam" style="transform:rotate(45deg)"></div>
<div class="beam" style="transform:rotate(55deg)"></div>
<div class="beam" style="transform:rotate(65deg)"></div>
<div class="beam" style="transform:rotate(75deg)"></div>
<div class="beam" style="transform:rotate(85deg)"></div>
<div class="beam" style="transform:rotate(95deg)"></div>
<div class="beam" style="transform:rotate(105deg)"></div>
<div class="beam" style="transform:rotate(115deg)"></div>
<div class="beam" style="transform:rotate(125deg)"></div>
<div class="beam" style="transform:rotate(135deg)"></div>
<div class="beam" style="transform:rotate(145deg)"></div>
<div class="beam" style="transform:rotate(155deg)"></div>
<div class="white beam" style="transform:rotate(165deg)"></div>
<div class="white beam" style="transform:rotate(175deg)"></div> <div class="logo" style="top:120px;left:229px;">
<!-- 左盾牌 -->
<div class="d_shield1"></div>
<div class="d_shield2"></div>
<div class="d_shield3"></div> <!-- 右盾牌 -->
<div class="d_shield4"></div>
<div class="d_shield5"></div>
<div class="d_shield6"></div> <!-- 左边浅橘色部分 -->
<div style="transform: scale(0.82); left: 31px; top: 25px;">
<div class="l_shield1"></div>
<div class="l_shield2"></div>
<div class="l_shield3"></div>
</div> <!-- logo5的左半边灰色 -->
<div class="gray1"></div>
<div class="gray2"></div>
<div class="gray3"></div>
<div class="gray4"></div> <!-- logo5的右半边白色 -->
<div class="white1"></div>
<div class="white2"></div>
<div class="white3"></div>
<div class="white4"></div> <!-- 最后修补 -->
<div class="d_shield7"></div>
<div class="l_shield4"></div> <img src="data:images/HTML.png" alt="">
</div>
</div>
</body>
</html>

二、分步实现CSS样式

①背景

body{
margin:;padding:;
}
div{
position: absolute;
}
/*给整个容器设置样式*/
.bg{
width: 800px; height: 600px; background: #f2f2f2; overflow: hidden;
}
/*给beam元素设置样式*/
.beam{
width: 1600px; height: 20px; background: #fff; top: 290px; left: -400px;
}

效果:

②给所有的盾牌设置样式

.d_shield1,.d_shield2,.d_shield3,.d_shield4,.d_shield5,.d_shield6,.d_shield7{
background:#e15016;
}
.d_shield1{
left: 32px; width: 140px; height: 346px;
}
.d_shield2{
transform: skewX(5deg); /*变形:水平方向斜切5度*/ left: 16px; width: 100px; height: 346px;
}
.d_shield3{
transform: skewY(15deg); top: 265px; left: 32px; width: 140px; height: 100px;
}
.d_shield4{
left: 172px; width: 140px; height: 346px;
}
.d_shield5{
transform: skewX(-5deg); left: 227px; width: 100px; height: 346px;
}
.d_shield6{
transform: skewY(-15deg); top: 265px; left: 172px; width: 140px; height: 100px;
}
.d_shield7{
height: 20px; top: 199px; width: 80px; left: 60px;
}

效果:

③左边浅橘色部分

.l_shield1,.l_shield2,.l_shield3,.l_shield4{
background:#ee6812;
}
.l_shield1{
left: 172px; width: 140px; height: 346px;
}
.l_shield2{
transform: skewX(-5deg); left: 227px; width: 100px; height: 363px;
}
.l_shield3{
transform: skewY(-15deg); top: 282px; left: 172px; width: 138px; height: 100px;
}
.l_shield4{
height: 43px; top: 113px; width: 100px; left: 180px;
}

效果:

④右边灰色 “5” 部位

.gray1,.gray2,.gray3,.gray4{
background:#ebebeb;
}
.gray1{
height: 43px; width: 102px; left: 70px; top: 70px;
}
.gray2{
width: 46px; transform: skewX(5deg); height: 216px; top: 70px; left: 75px;
}
.gray3{
width: 95px; height: 43px; left: 77px; top: 156px;
}
.gray4{
width: 87px; height: 47px; top: 251px; transform: skewY(15deg); left: 87px;
}

效果:

⑤左边白色  “5” 部位

.white1,.white2,.white3,.white4{
background:#fff;
}
.white1{
width: 102px; height: 43px; left: 172px; top: 70px;
}
.white2{
width: 46px; height: 216px; transform: skewX(-5deg); top: 70px; left: 223px;
}
.white3{
height: 43px; width: 95px; left: 172px; top: 156px;
}
.white4{
height: 47px; width: 87px; left: 172px; top: 251px; transform: skewY(-15deg);
}
img{
position: fixed; top: 8px; left: 225px; width: 350px; height: 110px;
}

效果:

项目小结:

1.分步设置样式

2.CSS3属性    transform : rotate(10deg); 旋转  / scale(0.5) ; 缩放 / skew(10deg); 倾斜

【项目1-1】使用HTML5+CSS3绘制HTML5的logo的更多相关文章

  1. css3绘制腾讯logo

    CSS3绘制的腾讯LOGO,下边是对比图. 演示地址

  2. HTML5+CSS3学习笔记(一)

    HTML5+CSS3概述 HTML5和CSS3不仅仅是两项新的Web技术标准,更代表了下一代HTML和CSS技术.虽然HTML5的标准规范还没有正式发布,但是未来的发展前景已经可以预见,那就是HTML ...

  3. HTML5+CSS3学习笔记(一) 概述

    HTML5+CSS3概述      HTML5和CSS3不仅仅是两项新的Web技术标准,更代表了下一代HTML和CSS技术.虽然HTML5的标准规范还没有正式发布,但是未来的发展前景已经可以预见,那就 ...

  4. HTML5+CSS3静态页面项目-PayPaul的总结

    学习前端有一段时间了,一直在看书上的理论知识,而实战项目却很少.师兄常说,想要知道自己的实力有多少,知识掌握了多少,最好的方法就是去实践了,实践出真知嘛.于是决定在这个假期里,主要是通过项目的实践以及 ...

  5. HTML5+CSS3静态页面项目-BusinessTheme的总结

    因为期末考试.调整心态等等的种种原因,距离上一次的项目练习已经过了很久了,今天终于有时间继续练习HTML5+CSS3的页面架构和设计稿还原.设计图很长,整个页面分为了好几个区域,所以就不放完整的设计图 ...

  6. HTML5+CSS3整体回顾

    http://blog.poetries.top/2016/10/19/HTML5+CSS3%E5%9F%BA%E7%A1%80%E5%9B%9E%E9%A1%BE%20/ 这篇文章主要总结H5的一些 ...

  7. 《零基础学HTML5+CSS3(全彩版)》读书笔记

    2019年1月31日星期四 1点 <零基础学HTML5+CSS3(全彩版)>开始全面学习 前提: 11月20日开始学Python,可能因为太累了,也可能遇到了瓶颈,进入了一个迷茫期,1月6 ...

  8. html5/css3常考面试题

    一.HTML5 CSS3 CSS3有哪些新特性? 1. CSS3实现圆角(border-radius),阴影(box-shadow), 2. 对文字加特效(text-shadow.),线性渐变(gra ...

  9. 零基础学 HTML5+CSS3 全彩版 明日科技 编著

    第1章 基础知识 1.1 HTML概述 1.1.1 什么是HTML 1.1.2 HTML的发展历程 1.2 HTML文件的基本结构 1.2.1 HTML的基本结构 1.2.2 HTML的基本标记 1. ...

随机推荐

  1. DB太大?一键帮你收缩所有DB文件大小(Shrink Files for All Databases in SQL Server)

    本文介绍一个简单的SQL脚本,实现收缩整个Microsoft SQL Server实例所有非系统DB文件大小的功能. 作为一个与SQL天天打交道的程序猿,经常会遇到DB文件太大,把空间占满的情况: 而 ...

  2. 【JAVAWEB学习笔记】28_jqueryAjax:json数据结构、jquery的ajax操作和表单校验插件

    Ajax-jqueryAjax 今天内容: 1.json数据结构(重点) 2.jquery的ajax操作(重点) 3.jquery的插件使用   一.json数据结构 1.什么是json JSON(J ...

  3. python爬虫从入门到放弃(三)之 Urllib库的基本使用

    官方文档地址:https://docs.python.org/3/library/urllib.html 什么是Urllib Urllib是python内置的HTTP请求库包括以下模块urllib.r ...

  4. CCNA毕业测试

    要求: 1:不同楼层物理隔离,但逻辑相连 2:相同楼层物理相连,但逻辑隔离 3:主机可以动态获取IP地址 4:不同VLAN间可以进行通信 5:主机最终访问www.baidu.com弹出Congratu ...

  5. 全景智慧城市常诚——一个实体商家“自剖”VR全景的势在必得

    谈起"智慧城市",你的心中是否充满了期待?随着互联网的发展,人们对于"智慧城市"的需求越来越迫切.现在想想,我也算是首批入驻全景智慧城市的商家之一了.在各种连锁 ...

  6. unittest模块的常用方法:

    unittest模块的常用方法: assertEqual(a, b)     a == b assertNotEqual(a, b)     a != b assertTrue(x)     bool ...

  7. 初识Java-IO流

    1.定义: 流是一种抽象概念,它代表了数据的无结构化传递.数据流(Stream)是指数据通信的通道. 2.流的分类: 1)按流向分 输入流:从数据源到程序中的流 输出流:从程序到数据源的流 2)按数据 ...

  8. DOM知识梳理

    DOM 我们知道,JavaScript是由ECMAScript + DOM + BOM组成的.ECMAScript是JS中的一些语法,而BOM主要是浏览器对象(window)对象的一些相关知识的集合. ...

  9. JavaScript实现上传图片预览[js前端实现]

    <body> <input type="file" id="file_input" onchange="show_image()&q ...

  10. 转发:Ubuntu软件卸载安装的命令

    说明:由于图形化界面方法(如Add/Remove... 和Synaptic Package Manageer)比较简单,所以这里主要总结在终端通过命令行方式进行的软件包安装.卸载和删除的方法. 一.U ...