前端与HTML | 青训营笔记

149 阅读5分钟

这是我参与「第四届青训营 」笔记创作活动的的第1天。

什么是前端

对于前端,我的理解是使用HTML、CSS、javascript等语言写出网页代码,借助浏览器将网页渲染出来。因此学习前端,不仅要学习HTML、CSS和javascript,也要了解互联网的工作原理以及浏览器是如何运作的。此外,前端面向的是客户端,因此前端要注重其功能、美观、性能、安全等方面的问题。

HTML语言

HTML是超文本标记语言,与C语言、Java、python等编程语言不同,它是一种标记语言。

HTML语法

<!--标签不能交叉嵌套-->
正确:
<div><span>早安,小朋友</span></div>
错误:
<div><span>早安,小朋友</span></div>

<hr/>

<!--标签必须正确关闭(闭合)-->
正确:
<div><span>早安,小朋友</span></div>
错误:
<div><span>早安,小朋友</span></div>
    <hr/>
    <!--没有文本内容的标签-->
    正确:<br/>
    错误:<br>
    <hr/>

    <!--属性必须有值,属性值必须加引号-->
    正确:<font color="blue">早安,小朋友</font>
<hr/>
    <!--注释不能嵌套-->
    正确:<!--注释内容-->
    错误:<!--<!--注释内容-->-->
</body>
</html>

HTML部分常用标签

1. 标题标签

 需求1:演示标题1到标题6
    h1-h6都是标题标签
    h1最大
    h6最小
    align属性是对齐属性
    left     左对齐(默认)
    center   居中
    right    右对齐
    其中的左对齐,右对齐是相对与浏览器页面而言

代码演示如下

<h1 align="left">标题1</h1>
<h2 align="center">标题2</h2>
<h3 align="right">标题3</h3>
<h4>标题4</h4>
<h5>标题5</h5>
<h6>标题6</h6>
<hr/>

2. 超链接标签

超链接 使用a标签
    href属性设置连接地址
    target属性设置目标跳转
        _self    表示在当前页面跳转
        _blank   表示打开新页面来跳转

代码演示如下

<a href="http://www.baidu.com">百度</a><br/>
<a href="http://www.baidu.com" target="_self">百度_self</a><br/>
<a href="http://www.baidu.com" target="_blank">百度_blank</a><br/>

3. 列表标签

列表有无序列表和有序列表
    需求:使用无序列表的方式,把东北F4,赵四,刘能,小沈阳,宋小宝展示出来
    ul 是无序列表
        type可以改变前面的符号
    li是列表项
    ol是有序列表

代码演示如下

<ul type="none">
    <li>赵四</li>
    <li>刘能</li>
    <li>小沈阳</li>
    <li>宋小宝</li>
</ul>
<ol>
    <li>赵四</li>
    <li>刘能</li>
    <li>小沈阳</li>
    <li>宋小宝</li>
</ol>

4.img标签

    需求:使用img标签放一张图片,并修改宽高,边框属性
    img标签是是图片标签,用来显示图片
        src设置图片的路径
        width
        height调节图片的宽度与高度
        border属性设置图片的边框大小
        alt属性设置当前指定的路径找不到图片时,用文本来代替显示内容


    在javaSE中,路径分为相对路径和绝对路径
    相对路径:从工程名开始算
    绝对路径:盘符:/目录/文件名

    在web中,路径分为相对路径和绝对路径
    相对路径:
        .         表示当前文件所在的目录
        ..        表示当前文件所在的上一级目录
        文件名     表示当前目录所在的文件,相当于  ./文件名   ./可以省略

    绝对路径:
        格式是:http://ip:port/工程名/资源路径   如:http://localhost:8080/工程名/资源路径

代码演示如下

<img src="./goodimg/1.jpg" width="200" height="260" border="1" alt="商品图片找不到"/>
<img src="./goodimg/2.jpg" width="200" height="260"/>

5. 表单标签

表单就是html页面中,用来收集用户信息的所有元素的集合,然后将信息发送给服务器
    form标签是表单标签
        action 属性设置提交的服务器地址
        method 属性设置提交的方式get或post

        表单提交的时候,数据没有发送给服务器的三种情况:
            1.表单项没有name属性
            2.单选、复选(下拉列表中的option标签)都需要添加value属性,以便发送给服务器
            3.表单项不在提交的form标签中

         Get请求的特点
            1.浏览器地址栏的地址是:action属性[+?+请求参数]
              请求参数的格式是:name=value&name=value
            2.不安全
            3.它有数据长度的限制

         Post请求的特点
            1.浏览器地址栏中只有action属性值
            2.相对于GET请求要安全
            3.理论上没有数据长度的限制

    form标签就是表单
        input type=text      是文字输入框  value设置默认显示内容
        input type=password  是密码输入框  value设置默认显示内容
        input type=radio     是单选框     name属性可以对其分组   checked="checked"表示默认选中
        input type=checkbox  是复选框     checked="checked"表示默认选中
        input type=reset     是重置按钮   value属性修改按钮上的文本
        input type=submit    是提交按钮   value属性修改按钮上的文本
        input type=button    是按钮      value属性修改按钮上的文本
        input type=file      是文件上传
        input type=hidden    是隐藏域     当我们要发送某些信息,而这些信息,不需要用户参与,就可以使用隐藏域(提交的时候同时发送给服务器)


        select 标签是是下拉列表框
        option 标签是下拉列表框中的选项  selected="selected"设置默认选中
        textarea 表示多行文本输入框 (起始标签和结束标签中的内容是默认值)
            rows 属性设置可以显示几行的高度
            cols 属性设置每行可以显示几个字符宽度

代码演示如下

<form action="http://localhost:8080" method="post">
    <h1 align="center">用户注册</h1>
    <table align="center">
        <tr>
            <td>用户名称:</td>
            <td>
                <input name="username" type="text" value="默认值"/>
            </td>
        </tr>
        <tr>
            <td>用户密码:</td>
            <td>
                <input name="password" type="password" value="abc">
            </td>
        </tr>
        <tr>
            <td>确认密码:</td>
            <td>
                <input name="password" type="password" value="abc">
            </td>
        </tr>
        <tr>
            <td>性别:</td>
            <td>
                <input type="radio" name="sex" checked="checked" value="boy"/><input type="radio" name="sex" value="girl"/></td>
        </tr>
        <tr>
            <td>兴趣爱好:</td>
            <td>
                <input name="hobby" type="checkbox" checked="checked" value="java"/>Java
                <input name="hobby" type="checkbox" value="js"/>JavaScript
                <input name="hobby" type="checkbox" value="cpp"/>C++
            </td>
        </tr>
        <tr>
            <td>国籍:</td>
            <td>
                <select name="country">
                    <option>--请选择国籍--</option>
                    <option selected="selected">中国</option>
                    <option>美国</option>
                    <option>俄罗斯</option>
                </select>
            </td>
        </tr>
        <tr>
            <td>自我评价:</td>
            <td>
                <textarea name="desc" rows="10" cols="20">我才是默认值</textarea>
            </td>
        </tr>
        <tr>
            <td>
                <input type="reset">
            </td>
            <td align="center">
                <input type="submit">
            </td>
        </tr>

    </table>

6. 表格标签

 需求1:做一个带表头的三行三列的表格,显示边框
    需求2:修改表格的宽度与高度,表格的对齐方式,单元格间距

    table 标签是表格标签
        border 设置表格边框
        width 设置表格宽度
        height 设置表格高度
        align 设置表格相对于页面的对齐方式
        cellspacing 设置单元格间距
    tr 是行标签
    th 是表头标签
    td 是单元格标签
        align 设置单元格文本对齐方式
    b 标签是加粗标签

代码演示如下

    <table align="center" border="1" width="300" height="300" cellspacing="20">
        <tr>
            <th>1.1</th>
            <th>1.2</th>
            <th>1.3</th>
        </tr>
        <tr>
            <td>2.1</td>
            <td>2.2</td>
            <td>2.3</td>
        </tr>
        <tr>
            <td>3.1</td>
            <td>3.2</td>
            <td>3.3</td>
        </tr>

    </table>

 需求3:新建一个五行五列的表格,第一行,第一列的单元格要跨两列,第二行第一列的单元格跨两行,第四行第四列的单元格跨两行两列
        colspan 属性设置跨列
        rowspan 属性设置跨行

代码演示如下

<table width="500" height="500" cellspacing="0" border="1">
    <tr>
        <td colspan="2">1.1</td>

        <td>1.3</td>
        <td>1.4</td>
        <td>1.5</td>
    </tr>
    <tr>
        <td rowspan="2">2.1</td>
        <td>2.2</td>
        <td>2.3</td>
        <td>2.4</td>
        <td>2.5</td>
    </tr>
    <tr>

        <td>3.2</td>
        <td>3.3</td>
        <td>3.4</td>
        <td>3.5</td>
    </tr>
    <tr>
        <td>4.1</td>
        <td>4.2</td>
        <td>4.3</td>
        <td colspan="2" rowspan="2">4.4</td>

    </tr>
    <tr>
        <td>5.1</td>
        <td>5.2</td>
        <td>5.3</td>

    </tr>
</table>

内容划分

HTML内容划分为header、main、aside、footer。正如一个网页,其有头部部分、主体部分、边缘部分以及结尾的部分。 微信图片_20220725175353.png