重温HTML和CSS3

重温Web前端基础

本篇幅中着重文字,只是记录一些自己的见解,巩固下自身基础

网页结构是什么?

结构层 html 导航,列表,段文字,图片,链接,
表示层 css 颜色,大小,位置,
行为层 JavaScript,弹出,切换等。

什么是html?

HTML是用来描述网页的一种语言。
不是编程语言,是标记语言

什么是CSS?

CSS (层叠样式表)
是一种用来表现HTML或XML等文件样式的计算机语言。CSS不仅可以静态地修饰网页,还可以配合各种脚本语言动态地对网页各元素进行格式化。

何为javascript?

JavaScript一种脚本语言,是一种动态类型、弱类型、基于原型的语言,内置支持类型。广泛用于客户端的脚本语言,最早是在HTML网页上使用,用来给HTML网页增加动态功能。

HTML

1993年开始提出草案,发展到现在,已经经历二十余年,版本也已经更新到现在的H5,html语言作为网络语言标准,在计算机的发展史中有不可或缺的地位。

一.书写自己的第一个页面

<!-- <!DOCTYPE html> 声明为 HTML5 文档 -->
<!DOCTYPE html>
<!--html 元素是 HTML 页面的根元素 -->
<html lang="en">
    <!-- head头部标签 -->
<head>
    <!-- 国际通用语言编码,防止在浏览器中出现乱码 -->
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <meta http-equiv="X-UA-Compatible" content="ie=edge">
    <!-- 页面标题 -->
    <title>Document</title>
</head>
<body>
    <!-- 页面内容 -->
    <div>这是我的第一个页面</div>
</body>
</html>

html语言在当今web页面中有不可或缺的地位。

二.HTML代码规范
在之前很多 Web 开发人员对 HTML 的代码规范知之甚少,在2000年至2010年,许多Web开发人员从 HTML 转换到 XHTML。使用 XHTML后 开发人员才逐渐养成了比较好的 HTML 编写规范
<!DOCTYPE html>,文档声明放在首行
<div></div>,推荐使用小写字母,虽然我们在书写代码时候,一些标签无论大小写都会被浏览器解析,但是如果我们在开发时使用大小写混写,美感度会大大降低,或许根本就不存在所谓的美感度吧,并且在后续的维护中,你会更加糟心。
注释
在书写代码时切记一定要书写注释,一个开发项目少说也得个几千行吧,说大了几十万行都会有的,如果你不写注释,可能你今天加班写的代码,明天早上睡醒你都不知道自己写的是哪部分区域,或许甚至都不知道自己写的是什么了。

闭合标签

<body>
    <!-- 页面内容 -->
    <div>这是我的第一个页面
</body>

就好比上面的代码,虽然能够被浏览器正常阅读出来,重温HTML和CSS3
这种后果就不用我过多说了吧。

属性命名:在写HTML时推荐使用小写命名,不要随便命名,按照老前辈的来,就好导航栏,我们一般命名为nav,在css样式中,一眼就可看到,假如你给它命名为a,那就够我们寻找半天了。

图片属性:一般在用img插入图片时,顺手写上alt属性,这样一来即使客户在网络不佳时,依然能看到这部分区域是什么,增加用户的体验感。

避免一行代码过长、空行、缩进、不在html代码中写css和javascript等等

CSS

CSS始于1999年,时至今日,也近二十年,css3的出现为html样式提供了莫大的工作效率,之前,html工作人员想要画出一个圆角,需要用使用大量html标签或者插入各种图片来合成,然而css的出现,只需要使用一个border-radius属性就可以完成。开发人员从此从切图的工作中解放出来,一个圆角,一个border-radius即可解决
使用css写两个样式
1.使用伪元素写出来个心形

<style>
        /* 基于父级定位 */
    .heart{
     position: relative;
    }
    /* 使用伪元素画出两个图像,使用图形拼接来造出一个心 */
    .heart::after,
    .heart::before{
        content: "";
        position: absolute;
        top: 100px;
        left: 0;
        right: 0;
        margin: auto;
        width: 50px;
        height: 80px;
        background: red;
        /* borde-radius 有四个值 分别对应四个角,分别对应 左上 右上 右下 左下 */
        border-radius: 50px 50px 0 0;  

        /* 旋转元素,两个一起旋转。等下只需要调动一个即可 */
        transform: rotate(-45deg);
        transform-origin: 0 100%;        
    }
    /* 旋转元素 使它和before伪元素 拼接成一个心 */
    .heart::after{
        left: -100px;
        transform: rotate(45deg);
        transform-origin: 100% 100%;
    }
    </style>
</head>
<body>
    <div class="heart"></div>
</body>
</html>

2.再来一个太极图

<div id="taiji"></div>

下面css样式

#taiji {
            position: relative;
            width: 200px;
            height: 100px;
            background: white;
            border-color: black;
            border-style: solid;
            border-width: 4px 4px 100px 4px;
            border-radius: 100%;
            /* 这里50%也是可以的,目的是把正方形变成圆 */
            margin: 100px auto;
            
            animation: myfirst 4s linear infinite;
            /* 这句代码是引用动画,需要动态的可以添加这句代码,动画定义在下方,如果不需要动态的,就无需添加这句话 */
        }

        #taiji::before,
        #taiji::after {
            content: " ";
            position: absolute;
            top: 50%;
            left: 0;
            width: 25px;
            height: 25px;
            background: white;
            border: 38px solid black;
            /* //调成50%也是可以的 */
            border-radius: 100%;
        }

        #taiji::after {
            left: 50%;
            background: black;
            border-color: white;
        }

再给它加上动画,让它匀速无限旋转下去

@keyframes myfirst {
            0% {
                /* 当在0%时,让他旋转0度 */
                transform: rotate(0deg);
            }
            100% {
                /* 当在100%时,让他旋转360度 */
                transform: rotate(360deg);
            }

        }

小结:在我们用jQ写效果时,偶尔回顾下原生的,会发现很多乐趣。

相关推荐