HTML 基础

1.HTML结构

HTML代码是由“标签”组成的。
例如:

<body>
    hello!
</body>

●标签名 (body) 放到 < > 中
●大部分标签成对出现. <body> 为开始标签, </body>为结束标签.
●少数标签只有开始标签, 称为 “单标签”.
●开始标签和结束标签之间, 写的是标签的内容. (hello)
●开始标签中可能会带有 “属性”. id 属性相当于给这个标签设置了一个唯一的标识符(身份证号码).

<body id="MyId">
    hello!
</body>

1.1HTML文件基本结构

<html>
    <head>
        <title>实操第一次</title>
    </head>
    <body>
        hello,world!
    </body>
</html>

效果如图:
在这里插入图片描述
●html 标签是整个 html 文件的根标签(最顶层标签)
●head 标签中写页面的属性.
●body 标签中写的是页面上显示的内容
●title 标签中写的是页面的标题.

1.2标签层次结构

父子关系
兄弟关系

<html>
    <head>
        <title>实操第一次</title>
    </head>
    <body>
        hello,world!
    </body>
</html>

如上:
其中head 和 body 是 html 的子标签(html 就是 head 和 body 的父标签)
title 是 head 的子标签. head 是 title 的父标签.
head 和 body 之间是兄弟关系.
标签之间的结构关系,构成了一个DOM[Document Object Mode (文档对象模型)]树
在这里插入图片描述

1.3快速生成代码框架

在 IDEA 或者Visual Studio Code中创建文件 
xxx.html, 直接输入 ! , 按 tab 键, 此时能自动生成代码的主体框架.

<!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>
</head>
<body>
    
</body>
</html>

代码解释:
<!DOCTYPE html> 称为 DTD (文档类型定义), 描述当前的文件是一个 HTML5 的文件.
<html lang="en"> 其中 lang 属性表示当前页面是一个 “英语页面”. 这里暂时不用管. (有些浏览器会根据此处的声明提示是否进行自动翻译).
<meta charset="UTF-8"> 描述页面的字符编码方式. 没有这一行可能会导致中文乱码.
<meta name="viewport" content="width=device-width, initial-scale=1.0">
name="viewport" 其中 viewport 指的是设备的屏幕上能用来显示我们的网页的那一 块区域.
content="width=device-width, initial-scale=1.0" 在设置可视区和设备宽度
等宽, 并设置初始缩放为不缩放. (这个属性对于移动端开发更重要一些).

2.HTML常见标签

2.1注释标签

<!-- 注释 -->

ctrl + / 快捷键可以快速进行注释/取消注释.

2.2标题标签:h1-h6

有六个, 从 h1 - h6. 数字越大, 则字体越小.

    <h1>hello</h1>
    <h2>hello</h2>
    <h3>hello</h3>
    <h4>hello</h4>
    <h5>hello</h5>
    <h6>hello</h6>

效果图:
在这里插入图片描述

2.3段落标签:p

如果将长文本复制粘贴到html中,会发现没有分成段落
例:

<body>
    在思想上,积极进取,关心国家大事,并多次组织同学们学习政治精神,希望他们在新的世纪里继续努力,发扬我国
    青年的光荣传统,不解奋斗,不断创造,奋勇前进。我在奉献中不断成长,学会了无私的付出,学会了如何服务社会。
    我的品格得到了升华,人生观得到完善。正如一位志愿者所说:“哪里有困难,哪里就有青年志愿者的存在,哪里需要
    帮助,哪里就有青年志愿者的身影。

  在学习上刻苦认真,抓紧时间,不仅学习好学科基础知识,更好学好专业课知识,在课堂上积极配合老师的教学,和其
   他同学共同努力,做题目过程中遇到问题及时与他们探讨,希望大家能共同进步。
   
  在工作中,我认真负责,出色的完成学长学姐交给我的各项任务,作为校科创的一员,多次参加校级组织的活动。除了
    业余生活,提高了个人素质能力,并真实感受到班级工作能够顺利开展所带来的快乐。

</body>

效果图:
在这里插入图片描述
p标签表示一个效果

<p>这是一个标签</p>

通过 p 标签改进上述代码, 每个段落放到 p 标签中.

<body>
    <p>在思想上,积极进取,关心国家大事,并多次组织同学们学习政治精神,希望他们在新的世纪里继续努力,发扬我国
    青年的光荣传统,不解奋斗,不断创造,奋勇前进。我在奉献中不断成长,学会了无私的付出,学会了如何服务社会。
    我的品格得到了升华,人生观得到完善。正如一位志愿者所说:“哪里有困难,哪里就有青年志愿者的存在,哪里需要
    帮助,哪里就有青年志愿者的身影。
    </p>

  <p>在学习上刻苦认真,抓紧时间,不仅学习好学科基础知识,更好学好专业课知识,在课堂上积极配合老师的教学,和其
   他同学共同努力,做题目过程中遇到问题及时与他们探讨,希望大家能共同进步。
   </p>
   
  <p>在工作中,我认真负责,出色的完成学长学姐交给我的各项任务,作为校科创的一员,多次参加校级组织的活动。除了
    业余生活,提高了个人素质能力,并真实感受到班级工作能够顺利开展所带来的快乐。
   </p>

</body>

效果图:
在这里插入图片描述
注意:
● p 标签之间存在一个空隙
● 当前的 p 标签描述的段落, 前面还没有缩进. (未来 CSS 会学)
● 自动根据浏览器宽度来决定排版.
● html 内容首尾处的换行, 空格均无效.
● 在 html 中文字之间输入的多个空格只相当于一个空格.
● html 中直接输入换行不会真的换行, 而是相当于一个空格.

2.4换行标签:br

br 是 break 的缩写. 表示换行.
br 是一个单标签(不需要结束标签)
●br 标签不像 p 标签那样带有一个很大的空隙.
<br/>是规范写法. 不建议写成 <br>

 <p>在思想上,积极进取,关心国家大事,并多次组织同学们学习政治精神,<br/>
    希望他们在新的世纪里继续努力,发扬我国青年的光荣传统,不解奋斗,不断创造,奋勇前进。我在奉献中不断成长,学会了无私的付出,学会了如何服务社会。
    我的品格得到了升华,人生观得到完善。正如一位志愿者所说:“哪里有困难,哪里就有青年志愿者的存在,哪里需要
    帮助,哪里就有青年志愿者的身影。
    </p>

效果图:
在这里插入图片描述
提示:
●给标题, 作者, 小标题部分加上合适的标题.
●给每个段落加上合适的段落.
●给需要换行的地方加上 br 标签

2.5格式化标签(加粗\倾斜\删除线\下划线)

●加粗: strong 标签 和 b 标签
●倾斜: em 标签 和 i 标签
●删除线: del 标签 和 s 标签
●下划线: ins 标签 和 u 标签

    <strong>加粗方式1 strong</strong>
    <b>加粗方式2 b</b>

    <em>倾斜方式1 em</em>
    <i>倾斜方式2 i</i>

    <del>删除线方式1 del</del>
    <s>删除线方式2 s</s>

    <ins>下划线方式1 ins</ins>
    <u>下划线方式2 u</u>

效果图:
在这里插入图片描述
使用 CSS 也可以完成类似的效果. 实际开发中以 CSS 方式为主.

2.6图片标签:img

img 标签必须带有 src 属性. 表示图片的路径.

<img src="xiangrikui.jpg">

效果图:
在这里插入图片描述
此时要把 xiangrikui.jpg 这个图片文件放到和 html 中的同级目录中.

img 标签的其他属性

●alt: 替换文本. 当文本不能正确显示的时候, 会显示一个替换的文字.
●title: 提示文本. 鼠标放到图片上, 就会有提示.
●width/height: 控制宽度高度. 高度和宽度一般改一个就行, 另外一个会等比例缩放. 否则就会图片失衡.
●border: 边框, 参数是宽度的像素. 但是一般使用 CSS 来设定.
效果图:
在这里插入图片描述
注意:

  1. 属性可以有多个, 不能写到标签之前
  2. 属性之间用空格分割, 可以是多个空格, 也可以是换行.
  3. 属性之间不分先后顺序
  4. 属性使用 “键值对” 的格式来表示

关于目录结构:

对于一个复杂的网站, 页面资源很多, 这种情况可以使用目录把这些文件整理好.
1 . 相对路径: 以 html 所在位置为基准, 找到图片的位置.
●同级路径: 直接写文件名即可 (或者 ./)
●下一级路径: image/1.jpg
●上一级路径: …/image/1.jpg
2 . 绝对路径: 一个完整的磁盘路径, 或者网络路径. 例如
●磁盘路径 D:\rose.jpg
●网络路径https://seopic.699pic.com/photo/50059/7158.jpg_wh1200.jpg
代码示例:
1 . 使用相对路径: 创建一个 image 目录和 html 同级, 并放入一个 rose2.jpg

<img src="rose/xiangrikui.jpg" alt="">

2.使用相对路径2: 在 image 目录中创建一个 html, 并访问上级目录的 rose.jpg

<img src="../xiangrikui.jpg" alt="">

3.使用绝对路径1: 最好使用 / , 不要使用 \

<img src="D:/Users/Administrator/Desktop/rose/xiangrikui.jpg" alt="">

4.使用绝对路径2: 使用网络路径

    <img src="https://seopic.699pic.com/photo/50059/7158.jpg_wh1200.jpg" 
    alt="向日葵" title="这是一朵向日葵" width="50%" height="50%" border="5px">

2.7超链接标签:a

●href: 必须具备, 表示点击后会跳转到哪个页面.
●target(建议使用): 打开方式. 默认是 self. 如果是 blank 则用新的标签页打开.

<a href="https://leetcode-cn.com/problemset/all/">力扣</a>

链接的几种形式:

外部链接: href 引用其他网站的地址

<a href="https://leetcode-cn.com/problemset/all/">力扣</a>

效果图:
在这里插入图片描述
内部链接: 网站内部页面之间的链接. 写相对路径即可.

<!-- 简历练习 -->
    <a href="简历练习.html">点我跳转到简历练习

效果图:
在这里插入图片描述

空链接: 使用 # 在 href 中占位.

<!-- 空链接 -->
        <a href="#">空链接</a>

效果图:
在这里插入图片描述

下载链接: href 对应的路径是一个文件. (可以使用 zip 文件)

<!-- 下载链接 -->
        <a href="青年志愿者申请书.docx">点此下载青年志愿者申请书</a>

网页元素链接: 可以给图片等任何元素添加链接(把元素放到 a 标签中)

        <!-- 网页元素链接 -->
        <a href="https://leetcode-cn.com/problemset/all/">
            <img src="D:/Users/Administrator/Desktop/rose/xiangrikui.jpg" alt="">
        </a>

锚点链接: 可以快速定位到页面中的某个位置.

 <!-- 锚点链接 -->
        <a href="#one">id="one"</a><br>
        <a href="#two">id="two"</a><br>
        <a href="#three">id="three"</a><br>
        <p id="one">
            哈哈哈<br>
            呵呵呵<br>
            酷酷酷<br>
        </p>
        <p id="two">
            钱钱钱<br>
            嗡嗡嗡<br>
            呃呃呃<br>
        </p>
        <p id="three">
            热热热<br>
            她她她<br>
            要要要<br>
        </p>

效果图:
在这里插入图片描述
禁止 a 标签跳转:<a href="javascript:void(0);"> 或者<a href="javascript:;">

2.8表格标签

基本使用:
●table 标签: 表示整个表格
●tr: 表示表格的一行
●td: 表示一个单元格
●th: 表示表头单元格. 会居中加粗
●thead: 表格的头部区域(注意和 th 区分, 范围是比 th 要大的)
●tbody: 表格得到主体区域.
●table 包含 tr , tr 包含 td 或者 th.

表格标签有一些属性, 可以用于设置大小边框等. 但是一般使用 CSS 方式来设置.
这些属性都要放到 table 标签中.
● align 是表格相对于周围元素的对齐方式. align=“center” (不是内部元素的对齐方式)
● border 表示边框. 1 表示有边框(数字越大, 边框越粗), “” 表示没边框.
● cellpadding: 内容距离边框的距离, 默认 1 像素
● cellspacing: 单元格之间的距离. 默认为 2 像素
● width / height: 设置尺寸.

<!-- 表格标签 -->
        <table align="center" border="1" cellpadding="20" cellspacing="0" 
        width="500" height="500">
        <tr>
            <td>姓名</td>
            <td>性别</td>
            <td>年龄</td>
        </tr>
        <tr>
            <td>李星云</td>
            <td></td>
            <td>22</td>
        </tr>
        <tr>
            <td>姬如雪</td>
            <td></td>
            <td>24</td>
        </tr>
    </table>

效果图:
在这里插入图片描述

合并单元格(rowspan\colspan)

●跨行合并: rowspan="n"
●跨列合并: colspan="n"
步骤:

  1. 先确定跨行还是跨列
  2. 找好目标单元格(跨列合并, 左侧是目标单元格; 跨行合并, 上方是目标单元格)
  3. 删除的多余的单元格
<!-- 跨行合并 -->
        <table align="center" border="1" cellpadding="20" cellspacing="0" 
        width="500" height="500">
        <tr>
            <td rowspan="2">姓名</td>
            <td>性别</td>
            <td>年龄</td>
        </tr>
        <tr>
            <td>李星云</td>
            <td></td>
        </tr>
        <tr>
            <td>姬如雪</td>
            <td></td>
            <td>24</td>
        </tr>
    </table>

效果图:
在这里插入图片描述

        <!-- 跨列合并 -->
        <table align="center" border="1" cellpadding="20" cellspacing="0" 
        width="500" height="500">
        <tr>
            <td>姓名</td>
            <td>性别</td>
            <td>年龄</td>
        </tr>
        <tr>
            <td>李星云</td>
            <td colspan="2">男 22</td>
            
        </tr>
        <tr>
            <td>姬如雪</td>
            <td></td>
            <td>24</td>
        </tr>
    </table>

效果图:
在这里插入图片描述

2.9列表标签

主要使用来布局的. 整齐好看.

无序列表[重要] ul li

有序列表[用的不多] ol li

自定义列表[重要] dl(总标签) dt(小标题) dd(围绕标题来说明) 上面有个小标题, 下面有几个围绕着标题来展开的.

注意:
●元素之间是并列关系
● ul/ol 中只能放 li 不能放其他标签, dl 中只能放 dt 和 dd
● li 中可以放其他标签.
● 列表带有自己的样式, 可以使用 CSS 来修改. (例如前面的小圆点都会去掉)

    <h3>无序列表</h3>
    <ul>
        <li>李星云</li>
        <li>张子凡</li>
        <li>候卿</li>
    </ul>

    <h3>有序列表</h3>
    <ol>
        <li>姬如雪</li>
        <li>蚩梦</li>
        <li>阿姐</li>
    </ol>

    <h3>自定义列表</h3>
    <dl>
        <dt>铠甲勇士</dt>
        <dd>风鹰侠</dd>
        <dd>炎龙侠</dd>
        <dd>雪獒侠</dd>
        <dd>黑犀侠</dd>
        <dd>地虎侠</dd>
    </dl>

效果图:
在这里插入图片描述

2.10表单标签

表单是让用户输入信息的重要途径.
分成两个部分:
●表单域: 包含表单元素的区域. 重点是 form 标签.
●表单控件: 输入框, 提交按钮等. 重点是 input 标签.

form 标签(注意字母,和from区别)

    <form action="https://leetcode-cn.com/problemset/all/">
        ...[from的内容]
    </form>

描述了要把数据按照什么方式, 提交到哪个页面中.
form 需要结合 服务器 & 网络编程 进一步理解

input 标签

各种输入控件, 单行文本框, 按钮, 单选框, 复选框.
●type(必须有), 取值种类很多多, button, checkbox, text, file, image, password, radio 等.
●name: 给 input 起了个名字. 尤其是对于 单选按钮, 具有相同的 name 才能多选一.
●value: input 中的默认值.
●checked: 默认被选中. (用于单选按钮和多选按钮)
●maxlength: 设定最大长度(文本框\密码框).

1.文本框

用户名:<input type="text">

假如规定用户名最长为9位,则如下设置:

<input type="text" maxlength="9">

2.密码框

密码:<input type="password">

密码最长位数如上
上述两种效果图:
在这里插入图片描述
上述用户名和密码没有对齐,看着很不整齐,我们可以使用表格方式进行对齐操作

    <table>
        <tr>
            <td>用户名:</td>
            <td>
                <input type="text">
            </td>
        </tr>
        <tr>
            <td>密码:</td>
            <td>
                <input type="password">
            </td>
        </tr>
    </table>

在这里插入图片描述
这样看上去是不是整齐了很多.
3.单选框

            <td>性别:</td>
            <td><input  type="radio" value="">&nbsp;&nbsp;
                <input  type="radio" value=""></td>

在这里插入图片描述
如图所示:
这样写存在问题,那就是用户可以选择男性,也可以选择女性,我们可以用加入name这个属性解决这个问题:

            <td>性别:</td>
            <td><input name="sex" type="radio" value="">&nbsp;&nbsp;
                <input name="sex" type="radio" value=""></td>

注意: 单选框之间必须具备相同的 name 属性, 才能实现 多选一 效果.
假如一个调查问卷给规定只有男性,那么该如何设置呢?
且看下方:
使用checked="checked"

<td>性别:</td>
            <td><input name="sex" type="radio" value="" checked="checked">&nbsp;&nbsp;
                <input name="sex" type="radio" value=""></td>

在这里插入图片描述
4.复选框

        <tr>
            <td>学习语言:</td>
            <td>
                <input type="checkbox" >学JAVA
                <input type="checkbox" >学C++
                <input type="checkbox" >学C
            </td>
        </tr>

在这里插入图片描述
假如默认填写问卷的学生都学习了JAVA,则如下设置:

           <td>学习语言:</td>
            <td>
                <input type="checkbox" checked="checked">学JAVA
                <input type="checkbox" >学C++
                <input type="checkbox" >学C
            </td>

5.普通按钮:

<tr>
            <td>
                <input type="button" value="我是个按钮">
            </td>
        </tr>

效果图:
在这里插入图片描述
如果需要反复确认可以如下设置:

<input type="button" value=" 按 钮" onclick="alert('确认吗?')">

点击按钮就会弹出如下提示框:
在这里插入图片描述
6.提交按钮

<input type="submit" value="提交">

直接提交了,不会进行确认
提交按钮必须放到 form 标签内. 点击后就会尝试给服务器发送
7.清空按钮

<input type="reset" value="清空">

清空按钮必须放在 form 中. 点击后会将 form 内所有的用户输入内容重置.
8.选择文件

        </tr>
        <tr>
            <td>上传头像</td>
            <td>
                <input type="file">
            </td>
        </tr>

效果图:
在这里插入图片描述

label 标签

搭配 input 使用. 点击 label 也能选中对应的单选/复选框, 能够提升用户体验.
●for 属性: 指定当前 label 和哪个相同 id 的 input 标签对应. (此时点击才是有用的)

    <input id=women name="sex" type="radio" value="">
    <label for="women"></label>

此时选择性别时点击"女"字也可以选择

select 标签

下拉菜单
●option 中定义 selected=“selected” 表示默认选中.

     <tr>
         <td>选择工作地点</td>
         <td>
             <select>
                 <option>上海</option>
                 <option selected="selected">西安</option>
                 <option>北京</option>
                 <option>深圳</option>
             </select>
         </td>
     </tr>

效果图:
在这里插入图片描述

textarea 标签(多行文本)

rows控制高度,cols控制宽度

     <tr>
         <td>个人介绍</td>
         <td>
             <textarea rows="10" cols="30" >
             </textarea>
         </td>
     </tr>

文本域中的内容, 就是默认内容, 注意, 空格也会有影响.
rows 和 cols 也都不会直接使用, 都是用 css 来改的.

无语义标签: div & span

div 标签, division 的缩写, 含义是 分割
span 标签, 含义是跨度
就是两个盒子. 用于网页布局
●div 是独占一行的, 是一个大盒子.
●span 不独占一行, 是一个小盒子.

div可以实现换行作用
span不能够实现换行

<div>
    <span>风鹰铠甲</span>
    <span>风鹰铠甲</span>
    <span>风鹰铠甲</span>
    </div>
    <div>
    <span>炎龙铠甲</span>
    <span>炎龙铠甲</span>
    <span>炎龙铠甲</span>
    </div>
    <div>
    <span>地虎铠甲</span>
    <span>地虎铠甲</span>
    <span>地虎铠甲</span>
    </div>

在这里插入图片描述

HTML 特殊字符

有些特殊的字符在 html 文件中是不能直接表示的, 例如:
空格: &nbsp;
小于号: &lt;
大于号: &gt;
按位与: &amp;
html 标签就是用 < > 表示的. 因此内容里如果存在 < > , 就会发生混淆.

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值