前端开发与html学习笔记

一、前端开发概述

  • 前端开发:也叫做web前端开发,它指的是基于web的互联网产品的页面(也可叫界面)开发及功能开发
  • 互联网产品:指网站为满足用户需求而创建的用于运营的功能及服务,百度搜索、淘宝、QQ、微博、网易邮箱等都是互联网产品
  • 互联网产品开发流程

前端开发技术:前端工程师参照产品的效果图 来开发页面(也可叫界面),效果图是由UI设计师 用Photoshop(少量设计师用firework)来设计的,为了方便与UI设计师对接工作,前端需要掌握一些Photoshop的技能,Photoshop还可以辅助页面开发。把效果图布局成页面,需要用到HTML语言CSS语言 ,页面功能的开发需要用到javascript, 为了快速开发和系统开发,还需要学习一些前端的javascript库和框架

二、html基本结构

HTML(HyperText Mark-up Language):意思是超文本标记语言,超文本指的是超链接,标记指的是标签,是一种用来制作网页的语言,这种语言由一个个的标签组成,用这种语言制作的文件保存的是一个文本文件,文件的扩展名为html或者htm,一个html文件就是一个网页,html文件用编辑器打开显示的是文本,可以用文本的方式编辑它,如果用浏览器打开,浏览器会按照标签描述内容将文件渲染成网页,显示的网页可以从一个网页链接跳转到另外一个网页

基本结构如下

html 复制代码
<!DOCTYPE html>
<html lang="en">
    <head>            
        <meta charset="UTF-8">
        <title>网页标题</title>
    </head>
    <body>
          网页显示内容
    </body>
</html>
  • 第一行是文档声明
  • 第二行"<html>"标签和最后一行"</html>"定义html文档的整体,"<html>"标签中的'lang="en"'定义网页的语言为英文,定义成中文是'lang="zh-CN"',不定义也没什么影响,它一般作为分析统计用
  • "<head>"标签和"<body>"标签是它的第一层子元素,"<head>"标签里面负责对网页进行一些设置以及定义标题,设置包括定义网页的编码格式,外链css样式文件和javascript文件等,设置的内容不会显示在网页上,标题的内容会显示在标题栏
  • "<body>"内编写网页上显示的内容

html注释:

html 复制代码
<!-- 这是一段注释  -->

三、html标签

通过 <h1>、<h2>、<h3>、<h4>、<h5>、<h6>标签可以在网页上定义6种级别的标题。6种级别的标题表示文档的6级目录层级关系,比如说: <h1>用作主标题,其后是 <h2>,再其次是 <h3>,以此类推。搜索引擎会使用标题将网页的结构和内容编制索引,所以网页上使用标题是很重要的。

html 复制代码
<h1>这是一级标题</h1>
<h2>这是二级标题</h2>
<h3>这是三级标题</h3>
  1. <p>段落</p>:段落标签

  2. <br/>:换行标签

  3. 字符实体:代码中成段的文字,如果文字间想空多个空格,在代码中空多个空格,在渲染成网页时只会显示一个空格,如果想显示多个空格,可以使用空格的字符实体

    1. &nbsp;:空格
    2. &lt;:<
    3. &gt;:>
  4. 例:

  5. <div> 标签 块元素,表示一块内容,没有具体的语义

  6. <span> 标签 行内元素,表示一行中的一小段内容,没有具体的语义

  7. b/u/i/s/或 strong/ins/em/del:(加粗、下划线、倾斜、删除线)

  8. <img>标签可以在网页上插入一张图片,它是独立使用的标签,它的常用属性有:

    1. src属性:定义图片的引用地址
    2. alt属性:定义图片加载失败时显示的文字,搜索引擎会使用这个文字收录图片、盲人读屏软件会读取这个文字让盲人识别图片,所以此属性非常重要
    html 复制代码
    <img src="images/pic.jpg" alt="产品图片" />
  9. 绝对路径和相对路径:像网页上插入图片这种外部文件,需要定义文件的引用地址,引用外部文件还包括引用外部样式表,javascript等等,引用地址分为绝对地址和相对地址。

    1. 绝对地址:相对于磁盘的位置去定位文件的地址
    2. 相对地址:相对于引用文件本身去定位被引用的文件地址
    3. " ./ " 表示当前文件所在目录下,比如:"./pic.jpg" 表示当前目录下的pic.jpg的图片,这个使用时可以省略。
    4. " ../ " 表示当前文件所在目录下的上一级目录,比如:"../images/pic.jpg" 表示当前目录下的上一级目录下的images文件夹中的pic.jpg的图片
  10. <a>标签可以在网页上定义一个链接地址,它的常用属性有:

    1. href:定义跳转的地址

    2. title:定义鼠标悬停时弹出的提示文字框

    3. target:定义链接窗口打开的位置

      • target="_self" 缺省值,新页面替换原来的页面,在原来位置打开
      • target="_blank" 新页面会在新开的一个浏览器窗口打开
    4. 例:

      html 复制代码
      <a href="#"></a> <!--  # 表示链接到页面顶部   -->
      <a href="http://www.xqnav.top/" title="跳转的个人导航网站">个人导航</a>
      <a href="2.html" target="_blank">测试页面2</a>
  11. html列表

    1. 有序列表:在网页上定义一个有编号的内容列表可以用<ol>、<li>配合使用来实现,代码如下:
      1.

      html 复制代码
      <ol>
          <li>列表文字一</li>
          <li>列表文字二</li>
          <li>列表文字三</li>
      </ol>

      在网页上生成的列表,每条项目上会按1、2、3编号,有序列表在实际开发中较少使用

    2. 无序列表:在网页上定义一个无编号的内容列表可以用<ul>、<li>配合使用来实现,代码如下:在网页上生成的列表,每条项目上会有一个小图标,这个小图标在不同浏览器上显示效果不同,所以一般会用样式去掉默认的小图标,如果需要图标,可以用样式自定义图标,从而达到在不同浏览器上显示的效果相同,实际开发中一般用这种列表
      1.

      html 复制代码
      <ul>
          <li><a href="#">新闻标题一</a></li>
          <li><a href="#">新闻标题二</a></li>
          <li><a href="#">新闻标题三</a></li>
      </ul>
    3. 自定义列表:定义列表通常用于术语的定义

      1. <dl>标签表示列表的整体
      2. <dt>标签定义术语的题目
      3. <dd>标签是术语的解释
      4. 一个<dl>中可以有多个题目和解释,代码如下:
      html 复制代码
      <h3>前端三大块</h3>
      <dl>
          <dt>html</dt>
          <dd>负责页面的结构</dd>
      
          <dt>css</dt>
          <dd>负责页面的表现</dd>
      
          <dt>javascript</dt>
          <dd>负责页面的行为</dd>
      
      </dl>
  12. 表单:表单用于搜集不同类型的用户输入,表单由不同类型的标签组成,相关标签及属性用法如下:

    1. <form>标签 定义整体的表单区域

      1. action属性 定义表单数据提交地址
      2. method属性 定义表单提交的方式,一般有"get"方式和"post"方式
    2. <label>标签 为表单元素定义文字标注

    3. <input>标签 定义通用的表单元素

      1. type属性
        • type="text" 定义单行文本输入框
        • type="password" 定义密码输入框
        • type="radio" 定义单选框
        • type="checkbox" 定义复选框
        • type="file" 定义上传文件
        • type="submit" 定义提交按钮
        • type="reset" 定义重置按钮
        • type="button" 定义一个普通按钮
        • type="image" 定义图片作为提交按钮,用src属性定义图片地址
        • type="hidden" 定义一个隐藏的表单域,用来存储值
      2. value属性 定义表单元素的值
      3. name属性 定义表单元素的名称,此名称是提交数据时的键名
    4. <textarea>标签 定义多行文本输入框

    5. <select>标签 定义下拉表单元素

    6. <option>标签 与<select>标签配合,定义下拉表单元素中的选项

    7. 例:

      html 复制代码
      <form action="http://www..." method="get">
      <p>
      <label>姓名:</label><input type="text" name="username" />
      </p>
      <p>
      <label>密码:</label><input type="password" name="password" />
      </p>
      <p>
      <label>性别:</label>
      <input type="radio" name="gender" value="0" /> 男
      <input type="radio" name="gender" value="1" /> 女
      </p>
      <p>
      <label>爱好:</label>
      <input type="checkbox" name="like" value="sing" /> 唱歌
      <input type="checkbox" name="like" value="run" /> 跑步
      <input type="checkbox" name="like" value="swiming" /> 游泳
      </p>
      <p>
      <label>照片:</label>
      <input type="file" name="person_pic">
      </p>
      <p>
      <label>个人描述:</label>
      <textarea name="about"></textarea>
      </p>
      <p>
      <label>籍贯:</label>
      <select name="site">
          <option value="0">北京</option>
          <option value="1">上海</option>
          <option value="2">广州</option>
          <option value="3">深圳</option>
      </select>
      </p>
      <p>
      <input type="submit" name="" value="提交">
      <!-- input类型为submit定义提交按钮  
           还可以用图片控件代替submit按钮提交,一般会导致提交两次,不建议使用。如:
           <input type="image" src="xxx.gif">
      -->
      <input type="reset" name="" value="重置">
      </p>
      </form>
    8. 效果:

  13. 表格

    1. <table>标签:声明一个表格,它的常用属性如下:
      1. border:定义表格的边框,设置值是数值
      2. cellpadding:定义单元格内容与边框的距离,设置值是数值
      3. cellspacing:定义单元格与单元格之间的距离,设置值是数值
      4. align:设置整体表格相对于浏览器窗口的水平对齐方式,设置值有:left | center | right
    2. <tr>标签:定义表格中的一行
    3. <td>和<th>标签:定义一行中的一个单元格,td代表普通单元格,th表示表头单元格,它们的常用属性如下:
      1. align:设置单元格中内容的水平对齐方式,设置值有:left | center | right
      2. valign:设置单元格中内容的垂直对齐方式 top | middle | bottom
      3. colspan:设置单元格水平合并,设置值是数值
      4. rowspan:设置单元格垂直合并,设置值是数值
  14. 页面布局概述:布局也可以叫做排版,它指的是把文字和图片等元素按照我们的意愿有机地排列在页面上,布局的方式分为两种:

    1. table布局:通过table元素将页面空间划分成若干个单元格,将文字或图片等元素放入单元格中,隐藏表格的边框,从而实现布局。这种布局方式也叫传统布局,目前主要使用在EDM(广告邮件中的页面)中,主流的布局方式不用这种。
    2. HTML+CSS布局(DIV+CSS):主要通过CSS样式设置来布局文字或图片等元素,需要用到CSS盒子模型、盒子类型、CSS浮动、CSS定位、CSS背景图定位等知识来布局,它比传统布局要复杂,目前是主流的布局方式
  15. table布局:table布局及实例,table来做整体页面的布局,布局的技巧归纳为如下几点:

    1. 按照设计图的尺寸设置表格的宽高以及单元格的宽高
    2. 将表格border、cellpadding、cellspacing全部设置为0,表格的边框和间距就不占有页面空间,它只起到划分空间的作用
    3. 针对局部复杂的布局,可以在单元格里面再嵌套表格,嵌套表格划分局部的空间
    4. 单元格中的元素或者嵌套的表格用align和valign设置对齐方式
    5. 通过属性或者css样式设置单元格中元素的样式

四、笔记补充

双标签:开始标签+(属性名+属性值)、结束标签 属性之间没有顺序之分,标签上可以存在多个属性

单标签:

标签与标签关系:

父子关系(嵌套关系)

兄弟关系(并列关系)

排版标签·:

1.标题标签(加粗、变大、独占一行、1~6递减):<h1> </h1>

2.段落标签:<p> </p>

3.换行标签:<br>

4.水平线标签:<hr>

文本格式化标签:

1.b/u/i/s/或 strong/ins/em/del:(加粗、下划线、倾斜、删除线)

媒体标签:

  • 图片标签:<img src="" alt="">
    • src属性:指定图片位置
      • alt属性:属性值(图片显示失败时要显示的文字)
        • title属性:鼠标放图片上的文本提示(可用于其他标签)
          • Width和height:设置图片的宽高
  • 路径
    • 绝对路径:
      • **相对路径(常用):**从当前文件出发找目标文件

分类:

同级:<img src="目标图片.gif>或<img src="./目标图片.gif>

下级:下一级文件夹名/目标文件

上级:../目标文件

3.音频标签:<audio src="" controls></audio>

Controls:显示播放控件(属性值可省略)

Autoplay:自动播放

loop:循环播放

4.视频标签:<video src="./video.mp4" controls></video>

Src:

Controls:

Autoplay: muted(静音播放)

Loop:

5.链接标签:<a href="">文本</a>

特点:有下划线

Target:目标网页的打开形式

_self:覆盖原网页

_blank:新窗口跳转

6.空链接:回到顶部,<a href="#"></a>

列表标签:

无序列表:ul整体用于包裹li(用于包含每一行的内容)标签

有序列表:ol整体用于包裹li(用于包含每一行内容)标签

自定义列表:dl整体用于包裹dt/dd标签

dt:表示主题

dd:表示主题每一项内容(默认缩进)

表格标签:

基本标签:

  • Table:表格整体,用于包裹tr
  • Tr:表格每行,用于包裹td
  • td:表格单元格,用于包裹内容

表格相关属性:<table 属性>

Border:边框宽度

Width/height:表格宽高

表格标题和表头单元格标签:

caption:表格大标题(表格上)

th:表格每列小标题(通常为第一行)

表格结构标签:(突出表格不同部分)

  • thead:表格头部
  • tbody:表格主体
  • tfoot:表格底部

合并单元格(<td>属性):跨行(垂直)/跨列(水平)合并

rowspan:跨行

colspan:跨列

表单标签:

  • input(标签名)系列标签

type属性值:radio:单选框

(name属性:分组,有相同属性值为一组)

(checked:默认选中)

checkbox:多选框

text:属性名:placeholder:提示要输入的文本

(value属性:用户输入的内容,提交后发给后端服务器)

(name:当前控件含义,提交后告诉后端所发数据含义)

password、

file:属性名multiple:多文件选择

submit、reset、button(三种按钮功能要配合form标签使用,即将表单标签包裹起来)

button按钮标签:

type属性值:submit、reset、button

select下拉菜单标签:

select标签:下拉菜单整体

option:下拉菜单每一项

selected:默认选中

textarea:文本域标签

cols:规定可见宽度

rows:规定可见行数

label标签:用于绑定内容与表单标签的关系

  • 用label标签把内容包裹起来------>表单标签上添加id属性------>label的for属性中设置对应id值
  • 直接用label吧内容和表单标签包裹起来------>把label的for属性删除

语义化标签:

无语义化:

div标签:一行只显示一个(独占一行)

span标签:一行显示多个

有语义化:

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

字符实体:

html中空格合并

常见字符实体:网页中展示特殊符号效果需用字符实体替代

结构:&英文;

常见实体:

<body style="margin: 0 auto;">消除与浏览器顶部之间的缝隙;<div style="clear: both"></div>子边框浮动后,显示父边框的边框线

margin:外边距

padding:内边距

margin-top:25px; #表示外边距,子边框与父边框top之间的距离为25px

padding-top:25px #表示内边距,子边框内自己与top之间的距离为25px

position:fixed;

bottom:20px;

right:20px; #固定在右下角离右下各20px位置

#固定在页面某个位置;


学习导航:http:www.xqnav.top

相关推荐
cwj&xyp10 分钟前
Python(二)str、list、tuple、dict、set
前端·python·算法
dlnu201525062212 分钟前
ssr实现方案
前端·javascript·ssr
古木201916 分钟前
前端面试宝典
前端·面试·职场和发展
轻口味2 小时前
命名空间与模块化概述
开发语言·前端·javascript
前端小小王2 小时前
React Hooks
前端·javascript·react.js
迷途小码农零零发2 小时前
react中使用ResizeObserver来观察元素的size变化
前端·javascript·react.js
娃哈哈哈哈呀3 小时前
vue中的css深度选择器v-deep 配合!important
前端·css·vue.js
旭东怪3 小时前
EasyPoi 使用$fe:模板语法生成Word动态行
java·前端·word
ekskef_sef5 小时前
32岁前端干了8年,是继续做前端开发,还是转其它工作
前端