首页 前端知识 HTML零基础入门详细内容

HTML零基础入门详细内容

2024-08-14 22:08:52 前端知识 前端哥 854 292 我要收藏

这篇内容算是自己学习时的笔记,整理了一下,希望能帮助到您,有错误也欢迎指正。

HTML是什么

HTML指的是超文本标记语言,是HyperText Markup Language的缩写,它是一种用于创建网页的标准标记语言,它使用标记来描述网页的内容和结构。HTML使用标签来定义文本样式、创建列表、插入图像和视频,以及构建网页的结构。此外,HTML还支持超链接(用于导航到其他网页)、表单(用于用户输入)和多媒体(如音频和视频)等功能。HTML标签可以通过属性来扩展其功能,属性为标签提供了额外的信息,如图像的URL、链接的目标等。HTML是一种可扩展的语言,它的版本随着时间的推移而不断演变和更新。最新的HTML版本是HTML5,它引入了许多新的元素和API,提供了更强大的功能和更好的用户体验。

用什么软件和工具编写

HTML可以使用很多软件和工具来进行编写,比如电脑自带的记事本NotePad,Visual Studio Code,Sublime Text,WebStorm,Dreamweaver等等,你可以直接到软件的官网上去下载对应的软件,按步骤安装即可。

本教程使用VS Code来演示如何编写HTML,如果你选择了VS Code,你可以在扩展商店里下载一个叫Live Sever的插件,方便你在编写的时候预览网页效果。

第一个HTML文件

使用VS Code,在新建一个HTML文件后,你可以输入一个英文输入法中的感叹号,然后回车,就可以得到一个HTML的基本框架。

以下是对该代码的解析,这里在HTML文档中添加注释可以按快捷键Ctrl+'/',也可以手动输入。

<!--这是一个注释-->
<!DOCTYPE html> 
<!--文档类型声明,声明为HTML5文档-->
<html lang="en">
<!-- html是HTML文档的根元素,lang属性指定了文档的语言为英文(en) -->
<head>
<!-- head是HTML文档的头部分。 -->
    <meta charset="UTF-8">
    <!-- 指定了文档所用的字符编码,这里为UTF-8 -->
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <!-- 设置文档的视口,指定了文档在设备上显示的宽度(width=device-width)和初始缩放级别(initial-scale) -->
    <title>Document</title>
    <!-- 设置了文档的标题,将显示在浏览器的标题栏或标签页上 -->
</head>
<body>
    <!-- body是HTML文档的主体部分,包含实际显示在网页页面上的内容 -->
</body>
</html>

标题

在HTML中,标题是通过<h1>~<h6>进行定义的。

    <h1>1级标题</h1>
    <h2>2级标题</h2>
    <h3>3级标题</h3>
    <h4>4级标题</h4>
    <h5>5级标题</h5>
    <h6>6级标题</h6>

运行效果如图所示,通过观察可以发现,标题从<h1>到<h6>字体逐渐变小并且加粗,同时一个标题自占一行。

效果:

<h1>~<h6>标题标签都是成对存在,这样的标签叫作双标签,前边遇见的<html></html>,<head></head>和<body></body>也都是双标签。我们管实际内容之前的标签叫作起始标签,管之后的标签叫作结束标签。而上边的<meta>标签就是一个单标签,单标签通常不包含其他内容,仅用于设置元信息或插入一些独立的标记。

段落

在HTML中,段落通过<p>标签来定义的。

这里我们可以比较一下直接在<body>标签内写文本内容和在<p>标签内写文本内容的区别。

<body>
    HTML指的是超文本标记语言,是HyperText Markup Language的缩写,它是一种用于创建网页的标准标记语言。
    这是一个段落。
    <p>HTML指的是超文本标记语言,是HyperText Markup Language的缩写,它是一种用于创建网页的标准标记语言。</p>
    <p>这是一个段落</p>
</body>

运行发现,直接在<body>内写的文本内容不会分段,仔细观察还可以发现两段文字之间有一个空格,这是因为网页并不认识多个空格,只认识一个空格。而在不同的<p>标签内写的内容则会分段显示。

效果:

换行与分隔线

上面说到直接在<body>内写文本内容不会分段,但我们可以通过在文本后边增加换行标签<br>来实现这种效果。如下:

    HTML指的是超文本标记语言,是HyperText Markup Language的缩写,它是一种用于创建网页的标准标记语言。
    <br>
    这是一个段落。

效果: 

 而分隔线标签<hr>可以用来在HTML界面中创造水平线,以分隔内容。

    <h1>这是一个标题</h1>
    <hr>
    <p>这是一个段落</p>
    <hr>
    <p>这是一个段落</p>

效果: 

文本格式化标签

标签描述
<b>/<strong>文字加粗。
<u>/<ins>添加下划线。
<i>/<em>文字倾斜。
<s>/<del>添加删除线。

可以看到上表中的每种描述都有两个标签与之对应,我们可以通过运行代码看看在视觉上是否有不同。 

    <b>加粗</b>
    <strong>加粗</strong>
    <u>下划线</u>
    <ins>下划线</ins>
    <i>倾斜</i>
    <em>倾斜</em>
    <s>删除线</s>
    <del>删除线</del>

效果: 

我们可以发现在视觉上并没有不同。但是<b>,<u>,<i>,<s>都只是在视觉上存在效果,没有太强的语义含义,而<strong>用于表示文本的强调或重要性,<ins>表示插入的文本即文档中新添加或插入的内容,<em>表示强调的文本,可以是关键词、短语或句子,<del>表示文本被删除不再有效,这种区别是给开发人员来看的。

图片、音频和视频标签

首先我们在代码文件夹下要有图片、音频和视频文件,如下。

图片标签<img>

src是图片的路径;alt是替换文本,即当图片加载失败时显示的文本;width和height是图片的宽和高,只要修改其中一个值,另一个值就会等比例缩放,这样的好处是保证图片的形状不变;title是当鼠标悬停在图片上时显示的文字。

<body>
    <img src="Cat.png" alt="猫咪">
    <img src="Cats.png" alt="猫咪">
    <img src="Cat.png" alt="猫咪" width="100" title="喵">
</body>

 效果:

音频标签<audio>

src是音频的路径;controls是显示播放的控件;autoplay是自动播放,但浏览器一般都不支持该功能,毕竟一打开网页就播放音频很容易让人尴尬或者把人吓一跳;loop是循环播放,即在音频播放完之后从头开始重新播放。

<audio src="music.mp3" controls autoplay loop>音乐</audio>

效果 :

视频标签<video>

src、controls、autoplay和loop和音频标签均相同,说下muted,在谷歌浏览器中支持自动播放,但是必须配合muted静音播放。可以找一个有声视频在谷歌浏览器中试试,我这个视频本身就是无声的,看不出效果。

<video src="cat.mp4" controls autoplay muted loop></video>

 效果:

绝对路径

绝对路径就是完整的路径,包括完整的磁盘路径和网页地址。

使用<a>标签来设置超文本链接,<a>标签之间的文字将会显示为蓝色字体并带有下划线,访问之后变成紫色。href属性用来描述链接地址;target属性用于指定链接在何处打开,_blank即为在新窗口或标签页打开链接。

    <img src="file:///D:/HTML/images/cat.gif" alt="猫">
    <a href="https://www.csdn.net" target="_blank">CSDN</a>

 效果:

target属性值作用效果
_self默认值,在当前窗口或标签页中打开链接。

_blank

在新窗口或标签页中打开链接。
_parent在父级框架中打开链接。
_top在顶级框架中打开链接,取消所有嵌套框架。

相对路径

相对路径是指相对于当前文档的路径,包括同级、上级和下级,在介绍图片音频视频标签时举的例子都是同级文件,这里就不再赘述。

下级文件的相对路径

这里我在images上一级文件夹中新建了一个示例文件,此时cat.gif就是示例文件的下级,那么如何在示例文件中插入cat.gif呢?

首先要找到目标文件相对于当前文档的位置,打开images文件夹,然后我们就找到了目标的cat.gif,同理,路径即为images/cat.gif。

<img src="images/cat.gif" alt="猫">

 上级文件的相对路径

如图,想要在相对路径.html插入示例.html的相对路径链接,首先我们要回到上级文件夹code,因为code与示例.html是同级的,而要回到上一级,即在路径前加 ../ 。

<a href="../示例.html" target="_blank">上级文件</a>
<!--回到上两级文件在前边加../../-->

列表

无序列表

<ul>标签定义无序列表,<li>标签定义列表项。示例如下:

    <ul>
        <li>榴莲</li>
        <li>香蕉</li>
        <li>苹果</li>
        <li>哈密瓜</li>
        <li>火龙果</li>
    </ul>

效果: 

 

有序列表

<ol>标签定义有序列表,<li>标签定义列表项。示例如下:

    <ol>
        <li>薯片</li>
        <li>巧克力</li>
        <li>酸奶</li>
        <li>棒棒糖</li>
    </ol>

效果: 

 

自定义列表

<dl>标签定义 自定义列表,<dt>标签定义 自定义列表项目,<dd>定义 列表项。

    <dl>
        <dt>帮助中心</dt>
        <dd>账户管理</dd>
        <dd>购物指南</dd>
    </dl>

效果: 

 

表格

标签描述
<table>定义表格
<thead>定义表格的页眉、表头
<tbody>定义表格的主体
<tfoot>定义表格的脚注、页脚
<tr>定义表格的行
<th>定义表头单元格
<td>定义表格单元
<caption>定义表格标题

这里举一个学生信息表的例子来说明。

border属性是表格的边框,如果不定义边框属性,表格将不会显示边框,同时可以用width属性和height属性来改变表格的宽高。

rowspan属性可以跨行合并单元格,跨几行,rowspan的值就是几;colspan属性可以跨列合并单元格,道理同rowspan。

    <table border="1" width="150" height="100">
        <caption><strong>学生信息表</strong></caption>
        <thead>
            <tr>
                <th>班级</th>
                <th>姓名</th>
                <th>成绩</th>
            </tr>
        </thead>
        <tbody>
            <tr>
                <td rowspan="3">三年二班</td>
                <td>张三</td>
                <td>99</td>
            </tr>
            <tr>
                <td>李四</td>
                <td>90</td>
            </tr>
            <tr>
                <td>王五</td>
                <td>95</td>
            </tr>
        </tbody>
        <tfoot>
            <tr>
                <td>评语</td>
                <td colspan="2">都挺好</td>
            </tr>
        </tfoot>
    </table>

 效果:

表单

HTML 表单用于收集用户的输入信息,表示文档中的一个区域,此区域包含交互控件,将用户收集到的信息发送到 Web 服务器。表单通常包含各种输入字段、复选框、单选按钮、下拉列表等元素。

使用<form>标签来创造表单,action属性定义了表单数据提交的URL,表单的输入字段、单选框、多选框、按钮、下拉表单等都在<form>标签内。

    <form action="">
        
    </form>

输入input

文本框

文本框的type属性值是text,name属性用于标识表单字段,id属性用于关联<label>元素,当id和for的值相同时,点击<label>标签中的文字的时候输入框就会出现文本光标。

    <label for="username">文本框</label>
    <input type="text" name="username" id="username">

效果: 

 

密码框

密码框的type属性值是password,name和id的用法和文本框一样,placeholder用于在框内显示提示信息,

<label for="password">密码框</label>
<input type="password" name="password" id="password" placeholder="请输入密码">

 效果:

输入的密码会自动变成黑点。

 单选框

radio用于单选一,相同的name属性值的选项只能选中一个,checked是在打开网页时默认选择这一项,在多选框中同样适用。

<input type="radio" name="gender" id="male" checked>
<label for="male">男</label>
<input type="radio" name="gender" id="female">
<label for="female">女</label>

效果: 

多选框

多选框的type属性值是checkbox,多选框的文字前是方框,而单选框是圆圈,勾选之后方框上会出现一个对勾。

爱好
<input type="checkbox" name="hobby" id="stayup">
<label for="stayup">熬夜</label>
<input type="checkbox" name="hobby" id="programming">
<label for="programming">编程</label>
<input type="checkbox" name="hobby" id="bald">
<label for="bald">秃头</label>

效果:

上传文件
<input type="file">

 

点击选择文件之后就会打开文件资源管理器可以选择文件,而有时候需要上传多个文件,此时会用到multiple。

<input type="file" multiple>

提交、重置、自定义按钮

submit是提交按钮,用户点击后,表单的内容会被传送到服务器。reset是重置按钮,可以把表单内的内容重置回初始状态。button是普通按钮,后续可以通过JS定义其功能。可以通过value的值改变按钮上显示的文字。

<input type="submit">
<input type="reset">
<input type="button" value="普通按钮">

效果: 

按钮button

<button>标签定义了按钮,和<input>里的type类型一样,button是普通按钮,reset是重置按钮,submit是提交按钮。

<button type="button">普通按钮</button>
<button type="reset">重置按钮</button>
<button type="submit">提交按钮</button>

效果: 

下拉菜单

<select>标签定义了下拉选项列表,<option>标签定义了下拉选型列表中的选项。可以在option标签内增加selected属性来预选这一项。

<select name="city">
    <option>北京</option>
    <option selected>上海</option>
    <option>广州</option>
    <option>深圳</option>
</select>            

效果: 

 

文本域

<textarea>标签定义了文本域,cols是列数,rows是行数。

<textarea cols="30" rows="10"></textarea>

效果: 

 

语义标签

语义=意义,使用语义标签可以用更具结构和语义的方式来描述网页的内容,使网页的结构更加清晰明了。

无语义的语义标签

<div>和<span>是使用频次很高的语义标签。

    这是语义标签
    <div>这是div标签</div>
    <span>这是span标签</span>
    <span>这是span标签</span>

效果: 

观察网页效果可以发现<div>标签和<span>标签的视觉效果和普通网页并没有区别,同时也可以发现<div>标签会换行,而<span>标签不会换行。

有语义的语义标签

这里是常用的几个具有语义的语义标签,借用菜鸟教程-HTML5 语义元素的图来说明一下这几个标签的位置关系。

    <header>网页头部</header>
    <nav>网页导航</nav>
    <footer>网页底部</footer>
    <aside>网页侧边栏</aside>
    <section>网页区块</section>
    <article>网页文章</article>

字符实体

HTML 中的预留字符必须被替换为字符实体,如不能使用大于号(>)和小于号(<),会被浏览器误认为是标签。一些在键盘上找不到的字符也可以使用字符实体来替换。

字符实体有很多,详细可以看HTML ISO-8859-1 参考手册,​​​​​​这里只说常用的字符实体空格&nbsp。前边说过网页只认识一个空格不认识多个,那么当要输入多个空格时就需要用到&nbsp.

<body>
    好好学习&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;天天向上
</body>

 

本篇内容到此结束,希望对您有所帮助。 

转载请注明出处或者链接地址:https://www.qianduange.cn//article/15592.html
标签
评论
发布的文章

04-Json/Ajax/Vue的知识

2024-08-21 10:08:39

大家推荐的文章
会员中心 联系我 留言建议 回顶部
复制成功!