Web前端零基础入门HTML5+CSS3学习笔记补充

前言

这是我第二次关于Web前端零基础入门HTML5+CSS3基础的学习笔记,主要是从两个不同讲师的角度全方面的学习一下web前端基础和顺带复习一下。所以我会在这里记录一下在第一个学习笔记中不熟悉或没有的部分,大家可以结合第一个笔记来一起看一下,第一个笔记比较详细。

这次学习B站尚硅谷的视频,想看是视频的小伙伴可以一用上面的链接。

HTML

首先我们回顾一下整体架构,再认识一下HTML,CSS,JS的作用。

在这里插入图片描述

文档的声明

HTML发展到现在有多个版本,在使用前你需要对浏览器声明一下,你所要使用的HTML的文档(doctype)版本

/*声明使用最新版本的HTML*/
<!DOCTYPE html>

zeal的下载使用与W3C在线文档的使用

zeal是一个离线文章的查看器,可以在没有网络的情况下查看文档。文档是我们编程时的说明书,对于每一个语言或者程序、软件都会有其的文档供我们在编程学习中使用。

zeal下载知道说明,亲测有用。不过有个很明显的缺点是zeal是英文版的,需要一定的英语基础,而且由于是国外的软件在下载文档时需要耐心等待几分钟。

W3C在线使用教程是中文版,内容也是比较全面的。不过要在联网时使用,而且版本较老。

VScode插件live Sever的安装

VScode是我们编程的使用的编程软件,这里是下载链接。根据自己的操作系统版本选择下载即可,具体的是全程同意的傻瓜式下载。

live Sever是一个VScode的插件,一个具有实时加载功能的小型服务器,可以使用它来破解html/css/javascript,但是不能用于部署最终站点。也就是说我们可以在项目中实时用live-server作为一个实时服务器实时查看开发的网页或项目效果。

下载后可以直接右键点击“open with live sever”使用。

meta标签

meta是html语言head区的一个辅助性标签。meta标签的作用有:搜索引擎优化(SEO),定义页面使用语言,自动刷新并指向新的页面,实现网页转换时的动态效果,控制页面缓冲,网页定级评价,控制网页显示的窗口等。

注意:

  1. 标签通常位于 区域内。
  2. 元数据通常以 名称/值 对出现。
  3. 如果没有提供 name 属性,那么名称/值对中的名称会采用 http-equiv 属性的值。

属性如下:
在这里插入图片描述

hgroup标签

hgroup是在两个标题之间有关系时使用,如在一个h1标题为大标题,一个h2为小标题时使用。

<hgroup>
    <h1>Calculus I</h1>
    <p>Fundamentals</p>
</hgroup>
<p>This course will start with a brief introduction about the limit of a function. Then we will describe how the idea of derivative emerges in the Physics and Geometry fields. After that, we will explain that the key to master calculus is …</p>

在这里插入图片描述

blockquote块引用

blockquote是块引用,在引用时可以使用该标签,因为其的显示方式时块,所以时独占一行。

    <blockquote>
        <p>Words can be like X-rays, if you use them properly—they’ll go through anything. You read and you’re pierced.</p>
    </blockquote>
    —Aldous Huxley, Brave New World

在这里插入图片描述

语义化标签(了解)

内容分区元素,即语义化标签允许将文档内容组织到逻辑片段中。使用分区元素为页面内容创建大致的大纲,包括头部header、页尾 footer、导航navigation, 以及用于标识内容部分的标题元素。

这部分是HTML5新增的部分,并不常用,仅作了解,实际上这些功能都可以用div和span来实现。

下面是zeal中关于此部分的文档内容的说明。
在这里插入图片描述
在这里插入图片描述

超链接

在这里补充一下第一个笔记
在超链接处的遗漏,即href=“#”,在表示空链接,也可以跳转页面的各个位置。
在这里插入图片描述

图片标签和图片格式(了解)

在img标签中,存在一个alt的属性,该属性是在图片无法显示时,才可以被用户看见。写不写都不影响整体页面的运行。但如果写了,除了如下方所示的内容外,还可以被浏览器基于关键词(alt的内容)智能搜索。

在这里插入图片描述

各种图片格式在使用时的优缺点如下

在这里插入图片描述

内联框架标签iframe

作用:用于向当前页面引入一个其它页面
代码形式如下

<!-- frameborder是内联框架的边框的宽度 -->
<iframe src="引入页面的路径"  height="高度" width="宽度"  frameborder="0"></iframe>

CSS

选择器补充

1.兄弟元素

兄弟元素:拥有相同父级元素的元素

<!-- 选择下一个兄弟 -->
兄+弟{css}
<!-- 选择下面所有弟弟 -->
兄~弟{css}

2.属性选择器

即通过属性来选择对应修饰的标签,书写格式如下
在这里插入图片描述

3.伪类补充

选择第几个元素来进行修饰
/*第一个*/
选择器名:first-of-type{css}
/*最后一个*/
选择起名:last-of-type{css}
/*第n个*/
选择器名:nth-of-type(n){css}
选择器名:not()

作用:将符合条件的元素从选择器中去除
如 li:not(nth-of-type(3)) 是将li中第三个剔除

超链接的伪类

在这里插入图片描述

伪元素

在这里插入图片描述

overflow属性

作用:处理子元素溢出
使用:overflow: 属性值;

属性值如下
在这里插入图片描述

outline属性

在这里插入图片描述
代码形式

outline:宽度 颜色 边框的形式(soild实线,dashed虚线,dotted点线);

元素脱离文档流的特点

在这里插入图片描述

用BFC解决高度塌陷问题

提前说明,如果用BFC是可以解决高度塌陷的问题,但会有一定的副作用。下面有第三种的副作用最小,但仍有副作用。建议是用clear或:before 与:after来解决,效果较好。

高度塌陷

在这里插入图片描述
BFC的特点如下
在这里插入图片描述

粘滞定位

在这里插入图片描述

如京东商城的右边导航使用了这样的定位,效果如下

在这里插入图片描述
在这里插入图片描述

图标字体

图标字体是如同下方的一样的图像,它的本质是矢量图,可以像字体一样自由放大而不失真,具体使用方法请参考这篇文章

在这里插入图片描述

水平对齐补充

水平对齐补充一个属性值:justify两端对齐

在这里插入图片描述

网页空白处理和多余内容处理

作用:采用下面的三行代码可以将多余的文字内容以省略号的形式显示。

在这里插入图片描述

背景补充

1.背景框

在这里插入图片描述

2.背景图的偏移background-origin

在这里插入图片描述

3. background-attachment

在这里插入图片描述

颜色渐变

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

表格属性补充

在这里插入图片描述

表单补充

表单数据提交步骤,一般要提交给服务器,但在下方临时搭一个HTML来接受,方便演示
在这里插入图片描述

注意:选择框,要注明value值

在这里插入图片描述

在这里插入图片描述

用z-index提高优先级

为了解决谁覆盖谁的问题,我们可以采用 z-index:数字(优先级级数); 来解决这个问题,优先级高的覆盖优先级低的。一般我会把最高优先级设置为9999。

优先级详细介绍

在这里插入图片描述
在这里插入图片描述

过渡transition

在这里插入图片描述
在这里插入图片描述

关键帧-自动(无需触动)

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

from默认为0,to默认为100%,即从过程的开始到结束

可以根据这样的特点设置中间的几个过程

在这里插入图片描述

变形(transform)

1.平移

在这里插入图片描述
注意:这种方式是可以确定元素的位置,但只能确定有固定宽高的元素的位置。

在这里插入图片描述

2.旋转

在这里插入图片描述
在这里插入图片描述

3.缩放

在这里插入图片描述

3.变形原点

在这里插入图片描述

less

less是一门css的预处理语言,是css的增强版,通过less可以编写更少的代码实现更强大的样式。
特点:

  1. 在less中添加了许多的新特性,像对变量的支持,对mixin的支持
  2. less的语法大体上与css语法一致,但是less中田佳琳许多对css的扩展
  3. 浏览器无法直接运行less代码,要执行必须像less转化为css,然后浏览器执行。

缺点是老版本的浏览器不兼容

详细介绍在这里

弹性盒子

在这里插入图片描述

1.弹性容器的样式

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

下面的属性值和上面一致

在这里插入图片描述
在这里插入图片描述
下面的属性值和上面一致

在这里插入图片描述

2.弹性元素的样式

在这里插入图片描述
在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

像素

1.基本介绍

在这里插入图片描述

2.手机像素

在这里插入图片描述

3.完美视口

在这里插入图片描述

4.像素单位vw

在这里插入图片描述

媒体查询

在这里插入图片描述
在这里插入图片描述

实战练习

小米商城

代码自取
链接:https://pan.baidu.com/s/1kiVODIV7Gz3Fhmy54DUniA
提取码:akcu
在这里插入图片描述
blog.csdnimg.cn/89c5b862aa5849099e80af2c945a2eb8.png)

在网页上实现动画的效果

图片仅用于演示,来自他人博客

1.米兔练习

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta http-equiv="X-UA-Compatible" content="IE=edge">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Document</title>
    <style>
        *{
            margin: 0;
            padding: 0;
        }
        .box1{
            width: 132px;
            height: 271px;
            background-image: url(./米兔.png);
            background-position: 0 0;
            transition: 0.3s steps(3);
            margin: 0 auto;
        }
        .box1:hover{
            background-position: -396px 0;
        }
    </style>
</head>
<body>
    <div class="box1"></div>
    
</body>
</html>

米兔练习

2.奔跑的少年

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta http-equiv="X-UA-Compatible" content="IE=edge">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Document</title>
    <style>
        *{
            padding: 0;
            margin: 0;
        }
        .box1{
            width: 120px;
            height: 136px;
            margin: 100px auto ;
            background-image: url(./奔跑的少年.png);
            animation: run 1s steps(10) infinite ;

        }
        @keyframes run{
            from{
                background-position: 0 0;

            }
            to{
                background-position: -1200px 0;

            }
        }
    </style>
</head>
<body>
    <div class="box1"></div>
</body>
</html>

在这里插入图片描述

奔跑的少年

3.用动画(animation)和rotaeZ(旋转)实现钟表

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta http-equiv="X-UA-Compatible" content="IE=edge">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Document</title>
    <style>
        *{
            margin: 0;
            padding: 0;
        }

        .clock{
            width: 265px;
            height: 265px;
            /* background-color: #bfa; */
            margin: 100px auto;
            /* animation: run 60s; */
            border-radius: 50%;
            border: 1px solid #000;
            background-image: url(./img/表盘.jpg);
            position: relative;
        }

        .hour-wrapper{
            position: absolute;
            height: 50%;
            width: 50%;
            top: 0;
            left: 0;
            bottom: 0;
            right: 0;
            margin: auto;
            animation: run 3600s linear infinite;
            /* background-color: aqua; */
        }
        .sec-wrapper{
            position: absolute;
            height: 80%;
            width: 80%;
            margin: auto;
            top: 0;
            left: 0;
            bottom: 0;
            right: 0;
            animation: run 1s steps(60) infinite;
            /* background-color: red; */

        }
        .min-wrapper{
            position: absolute;
            height: 65%;
            width: 65%;
            margin: auto;
            top: 0;
            left: 0;
            bottom: 0;
            right: 0;
            /* animation: run 60s steps(60) linear infinite; */
            animation: run 60s steps(60) infinite;

        }

        .hour{
            height: 50%;
            width: 8px;
            background-color: #000;
            margin: 0 auto;
        }
        .min{
            height: 50%;
            width: 6px;
            background-color: #000;
            margin: 0 auto;
        }
        .sec{
            height: 50%;
            width: 4px;
            background-color: rgb(231, 12, 12);
            margin: 0px auto;
            /* animation: run 60s; */
            
        }


        @keyframes run {
            from{
                transform: rotateZ(0);
            }

            to{

                transform: rotateZ(360deg);
            }
            
        }
    </style>
</head>
<body>
    <div class="clock">
        <div class="hour-wrapper">
            <div class="hour"></div>
        </div>
        <div class="min-wrapper">
            <div class="min"></div>
        </div>
        <div class="sec-wrapper">
            <div class="sec"></div>
        </div>
    </div>
    
    
</body>
</html>

在这里插入图片描述

用动画和旋转实现钟表

4.旋转的正方体

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta http-equiv="X-UA-Compatible" content="IE=edge">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Document</title>
    <style>
        html{
            perspective: 800px;
        }

        .cube{
            width:200px ;
            height: 200px;
            margin: 0 auto;
            margin-top: 250px;
            animation: run  20s infinite linear;
            transform-style: preserve-3d;
        }

        .cube> div{
            width: 200px;
            height: 200px;
            opacity: .7;
            position:absolute;
            
        }
      
        img{
            vertical-align: top;
            width: 200px;
            height: 200px;
        }
        .box1{
            transform: rotateY(90deg) translateZ(100px);
        }
        .box2{
            transform: rotateY(-90deg) translateZ(100px);
        }
        .box3{
            transform: rotateX(90deg) translateZ(100px);
        }
        .box4{
            transform:rotateX(-90deg) translateZ(100px)
        }
        .box5{
            transform: rotateY(180deg) translateZ(100px);
        }
        .box6{
            transform: rotateY(0deg) translateZ(100px);
        }
        @keyframes run{
            from{
                transform: rotateX(0) rotateZ(0);
            }

            to{
                transform: rotateX(1turn) rotateZ(1turn);
            }
        }
    </style>

</head>
<body>
    <div class="cube">
        <div class="box1"><img src="./img/01.gif" alt=""></div>
        <div class="box2"><img src="./img/02.gif" alt=""></div>
        <div class="box3"><img src="./img/03.gif" alt=""></div>
        <div class="box4"><img src="./img/04.jpg" alt=""></div>
        <div class="box5"><img src="./img/05.gif" alt=""></div>
        <div class="box6"><img src="./img/06.gif" alt=""></div>
    </div>
    
</body>
</html>

素材图片
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

旋转正方形

  • 1
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

木子与金与玉

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值