IT数码 购物 网址 头条 软件 日历 阅读 图书馆
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
图片批量下载器
↓批量下载图片,美女图库↓
图片自动播放器
↓图片自动播放器↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁
 
   -> JavaScript知识库 -> HTML、CSS、JavaScript -> 正文阅读

[JavaScript知识库]HTML、CSS、JavaScript

HTML、CSS、JavaScript🎹


1. web的概念概述

1.1 JavaWeb

使用Java语言开发基于互联网的项目

1.2 软件架构

  1. C/S:Client/Server 客户端/服务器端
    • 在用户本地有一个客户端程序,在远程有一个服务器端程序
    • 如:QQ、迅雷
    • 优点:
      • 用户体验好
    • 缺点:
      • 开发、安装、部署、维护麻烦
  2. B/S:Browser/Server 浏览器端/服务器端
    • 只需要一个浏览器,用户通过不同的网址(URL),客户访问不同的服务器端程序
    • 优点:
      • 开发、安装、部署、维护简单
    • 缺点:
      • 如果应用过大,用户体验可能会受到影响
      • 对硬件要求过高

1.3 B/S架构详解

资源分类

  • 静态资源:使用静态网页开发技术开发的资源
    • 特点:所有用户访问,看到的结果是一样的。
    • 如:文本、图片、音频、视频、HTML、CSS、JavaScript
    • 如果用户请求的是静态资源,那么服务器会直接将静态资源发送给浏览器。浏览器中内置了静态资源的解析引擎,可以展示静态资源
  • 动态资源:使用动态网页技术发布的资源
    • 特点:所有用户访问,得到的结果可能不一样
    • 如:jsp/servlet,php,asp
    • 如果用户请求的是动态资源,那么服务器会执行动态资源,转换为静态资源,在发送给浏览器
  • 静态资源分类
    • HTML:用于搭建基础网页,展示网页内容
    • CSS:美化页面,布局页面
    • JavaScript:控制页面的元素,让页面有一些动态的效果

2. HTML

2.1 概念

最基础的网页开发语言

Hyper Text Markup Language:超文本标记语言

  • 超文本:超文本是用超链接的方法,将各种不同空间的文字信息组织在一起的网状文本。
  • 标记语言:由标签构成的语言。<标签名称> 如:html、xml
    • 标记语言不是编程语言。没有任何逻辑性

2.2 快速入门

语法:

  1. 后缀名 .html 或者 .htm

  2. 标签分类:

    • 围堵标签:有开始标签和结束标签 如

    • 自闭和标签:开始和标签和结束标签在一起,如

  3. 标签可以嵌套

  4. 在开始标签中可以定义属性。属性由键值对构成,值需要用引号(单双都可以)引起来

  5. html的标签不区分大小写,建议使用小写

2.3 标签分类

1. 文件标签:构成html最基本的标签

  • html:表示html文档的根标签
  • head:头标签。用于指定html文档的一些属性。引入外部资源
  • title:定义标题的标签。
  • body:体标签

2. 文本标签:和文本有关的标签

  • 注释:

  • <h1> to <h6>:标题

  • <p>:段落

  • <br>:换行

  • <hr>:显示一条水平线

  • <b>:字体加粗

  • <i>:斜体

  • <font>:字体标签

3. 图片标签

  • 相对路径:./当前路径 …/上一级目录

4. 列表标签

  • 有序列表
    • ol:order list
    • li
  • 无序列表
    • ul
    • li

5. 超链接标签

  • a:超链接
  • 属性:
    • href:可以指定网络资源也可以指定项目内的资源
    • target:指定打开资源的方式
      • _self:在当前页面打开
      • _blank:在空白页面打开

6. div和span

  • div:每一个div占满一整行,块级标签
  • span:行内标签,内联标签,不换行

7. 语义化标签

  • <header>
  • <footer>

8. 表格标签

  • table:定义表格
    • width
    • border
    • cellpadding:定义内容和单元格的距离,一般也指定为0
    • cellspacing:定义单元格之间的距离。如果指定为0,则单元格的线会合为1条
    • bgcolor:背景色
    • align:对齐方式
  • tr:定义行
  • td:定义单元格
  • th:定义表头单元格
  • caption:表头
  • thead:表示表格的头部分
  • tbody:表示表格的体部分
  • tfoot:表示表格的脚部分

9. 表单标签

表单:用于采集用户输入的数据的,用户和服务器进行交互

使用标签:<form> ... </form>

  • 属性

    • action:指定提交数据的URL

    • method:指定提交方式

      • 分类:一共7种,2种常用

        • get:
        1. 请求参数会在地址栏中显示
        2. 请求参数的长度是有限制的
        3. get请求不太安全
        • post:
        1. 请求参数不会在地址栏中显示,会封装在请求体中(HTTP协议)
        2. 请求参数的长度没有限制
        3. post请求较为安全
  • 表单项中的数据要想被提交,必须指定其name属性

  • 表单项标签:

    • input:可以通过type属性值来改变元素展示的样式
      • type属性:
        1. text:文本输入框
          • placeholder:指定输入框的提示信息,当输入框的内容发生改变时,会自动情况提示信息
        2. password:密码输入框
        3. radio:单选框
          • name: 要想让多个单选框实现单选的效果,则多个单选框的name属性值必须一样
          • value: 一般会给每一个单选框一个value属性,指定其被选中后提交的值
          • checked 属性,指定默认值
        4. checkbox:复选框
          • value: 一般会给每一个单选框一个value属性,指定其被选中后提交的值
          • checked 属性,指定默认值
        5. file:文件选择框
        6. hidden:隐藏域,用于提交一些信息
        7. submit:提交按钮,提交表单
        8. button:按钮,会与JavaScript的联合使用
        9. label:指定输入项的文字描述信息
          • for: label的for属性一般会和input的id属性对应。如果对应了,则点击label区域,会让input输入框获取焦点
    • select:下拉列表
      • option:子元素,指定列表项
    • textarea:文本域
      • cols:每一行有多少个数据
      • rows:有多少行,行不够会自动扩容

3. CSS

页面美化和布局控制

3.1 概念

CSS:Cascading Style Sheets 层叠样式表

  • 层叠:多个样式可以作用在一个html的元素上,同时生效

  • 好处

    1. 功能强大
    2. 将内容的展示和样式控制分离
      • 降低耦合度。解耦
      • 让分工协作更容易
      • 提高开发的效率

3.2 CSS的使用:CSS与HTML的结合方式

  1. 内联样式

    • 在标签内使用style指定css代码(不推荐)

    • <div style="color: red">hello css</div>
      
  2. 内部样式

    • 在head标签内,定义style标签,style标签的标签体内容就是css代码

    • <style>
          div{
              color: aqua;
          }
      </style>
      
  3. 外部样式

    1. 定义css资源文件
    2. 在head标签内定义link标签,引入外部的资源文件
    <link rel="stylesheet" href="../css/cssDemo01.css">
    

    【注意】三种方式,css作用范围越来越大。1方式不常用。2、3方式常用

3.3 CSS的基本语法

  • 格式:

    选择器 {
    	属性名1:属性值1;
    	属性名2:属性值2;
    	属性名3:属性值3;
    	...
    }
    
  • 选择器:筛选具有相似特征的元素

  • 【注意】每一对属性需要使用分号隔开,最后属性可以不加分号

3.4 选择器

概念:筛选具有相似特征的元素

  • 分类:

    1. 基本选择器

      • id选择器:选择具体的id属性值的元素(优先级高于元素选择器)
        • 语法: #id属性值{ … }
      • 元素选择器:选择具有相同标签名的元素
        • 语法:标签名称{ … }
      • 类选择器:选择具有相同的class属性值的元素
        • 语法:.class属性值{ … }
    2. 扩展选择器

      • *{}:选择所有选择器

      • 选择器1,选择器2{}:并集选择器

      • 子选择器:选择器1 选择器2:筛选选择器1元素下选择器2元素

      • 父选择器:选择器1>选择器2:筛选选择器2元素的父元素选择器1

      • 属性选择器:选择元素名称,属性名=属性值的元素

        语法:元素名称[属性名=“属性值”]{ … }

      • 伪类选择器:选择一些元素具有的状态

        语法:元素:状态{}

        如:

        • 状态:
          • link:初始化的状态
          • visited:被访问过的状态
          • active:正在访问的状态
          • hover:鼠标悬浮状态

3.5 属性

  1. 字体、文本
    • font-size:字体大小
    • color:文本颜色
    • text-align:文本对齐方式
    • line-height:行高
  2. 背景
    • background:复合属性
  3. 边框
    • border:设置边框,复合属性
  4. 尺寸
    • width:宽度
    • height:高度
  5. 盒子模型:控制布局
    • margin:外边距
    • padding:内边距
      • 默认情况下,内边距会影响盒子的大小
      • 设置盒子的属性,让width和height就是最终盒子的大小:box-sizing: border-box;
    • float:浮动
      • left
      • right

4. JavaScript基础

概念:一种客户端脚本语言

  • 运行在客户端浏览器中的,每一个浏览器都有JavaScript的解析引擎
  • 脚本语言:不需要编译,直接可以被浏览器解析执行

功能:可以来增强用户和html的交互过程,可以来控制html元素,让页面有一些动态的效果,增强用户的体验

JavaScript = ECMAScript + JavaScript自己特有的东西(BOM+DOM)

4.1 ECMAScript

4.1.1 基本语法

  1. 与html的结合方式

    1. 内部JS:定义

4.1.2 基本对象

  • Function:函数(方法)对象

    1. 创建
      • var function = new function(形式参数列表, 方法体)不好!不推荐!仅作了解!
      • function 方法名称(形参列表){ // 方法体 }推荐
      • var 方法名 = function(形参列表){ ... }
    2. 方法
    3. 属性
    4. 特点
      • 方法定义时,形参的类型不用写,返回值类型也不写
      • 方法是一个对象,如果定义名称相同的方法,会覆盖,而不是重载
      • 在JS中,方法的调用值与方法的名称有关,与参数列表无关
      • 在方法声明中有一个隐藏的内置对象(数组),arguments,封装了所有的实际参数
    5. 调用
  • Array

    1. 创建
      1. var arr = new Array(数组列表);
      2. var arr = new Array(默认长度);
      3. var arr = [元素列表];
    2. 特点
      1. 在JS中,数组的元素类型可变
      2. 在JS中,数组的长度可变
    3. 属性
      1. length:长度
    4. 方法
      1. join(参数):将数组中的元素按照指定的分隔符拼接为字符串
  • Boolean

  • Date

    1. 创建
      1. var date = new Date();
    2. 方法
      1. toLocaleString():返回当前date对象对应的时间本地的字符串
      2. getTime():获取毫秒值。
  • Math:工具类

    1. 创建
      1. 特点:Math对象,不用创建,直接使用。Math.方法名()
    2. 方法
      1. random():返回0到1之间的随机数。[0,1)
    3. 属性
      1. PI
  • Number

  • String

  • RegExp:正则表达式对象

    1. 单个字符:[]

      如:[a] [ab] [a-zA-Z0-9_]

      • 特殊符号代表特殊含义的单个字符:
        • \d:单个数字字符 [0-9]
        • \w:单个单词字符 [a-zA-Z0-9_]
    2. 量词符号

      • *:表示0次或多次
      • ?:表示0次或1
      • +:出现1次或多次
      • {m,n}:m<= 数量 <=n \w{6,12} —> 不少于6个字符,不多于12个字符
        • m如果缺省:{,n}:表示最多n次
        • n如果缺省:{m,}:最少m次
    3. 开始和结束符号

      • ^:开始
      • $:结束
    4. 创建

      1. var reg = new RegExp(“正则表达式”);
      2. var reg = /正则表达式/; 推荐
    5. 方法

      1. test(参数):验证指定的字符串是否符合定义的规范
  • Global

    1. 特点:全局对象,这个Global对象中封装的方法不需要对象直接调用。 方法名();
    2. 方法:
      1. encodeURI() 和 decodeURI():url编解码
      2. encodeURIComponent() 和 decodeURIComponent():url编解码
      3. parseInt():将字符串转为数字。逐一判断每一个字符是数字,直到不是数字位置,将前面数字部分转为number
      4. isNaN():判断一个值是否是NaN或字符串、对象、undefined等非数字值则返回 true, 否则返回 false。
        • NaN六亲不认,连自己都不认。NaN参与的==比较全部为false
      5. eval():函数计算 JavaScript 字符串,并把它作为脚本代码来执行。

4.2 BOM

  • 功能:控制html文档的内容
  • 代码:获取页面标签(元素)对象Element
    • document.getElementById("id值"):通过元素的id获取元素对象
  • 操作Element对象
    • 设置其属性:
      • 明确获取的对象是哪一个
      • 查看API文档,找其中有哪些属性可以设置
    • 修改标签体内容:
      • 属性:innerHTML

4.2.1 BOM概念

Browser Object Model:浏览器对象模型

  • 将浏览器的各个组成部分封装成对象。

4.2.2 组成

  • Window:窗口对象
  • Navigator:浏览器对象
  • Screen:显示器屏幕对象
  • History:历史记录对象
  • Location:地址栏对象

4.2.3 Window窗口对象

  1. 创建

  2. 方法

    1. 与弹出框有关的方法

      1. alert():弹出一个警告框

      2. confirm():确认、取消对话框

        如果用户点击"确定"按钮,方法返回true;如果点击”取消“,方法返回false

      3. prompt():显示用户输入框

        返回值:获取用户输入的值

    2. 与打开关闭有关的方法

      1. close():关闭窗口

        谁调用我,我关谁

      2. open():打开一个新窗口。可以用一个变量接收返回值

    3. 与定时器有关的方法

      1. setTimeOut():在指定的毫秒数后调用函数或计算表达式

        参数:

        • js代码或指定对象
        • 毫秒值

        返回值:唯一标识,用于取消定时器

      2. clearTimeOut():取消setTimeOut方法设置的timeout

      3. setInterval():按照指定的周期(以毫秒计)来调用函数或计算表达式。循环执行

      4. clearInterval():取消由 setInterval() 设置的 timeout。

  3. 属性

    1. 获取其他BOM对象:history、location、navigator、screen
    2. 获取DOM对象:document
  4. 特点

    1. Window对象不需要创建可以直接使用 window.方法名();
    2. window引用可以省略 方法名();

4.2.4 Location对象

  1. 创建(获取):
    1. window.location
    2. location
  2. 方法
    1. reload():重新加载当前文档刷新页面
  3. 属性
    1. href:设置或返回完整的url

4.2.5 History历史记录对象

  1. 创建

    1. window.history
    2. history
  2. 属性

    1. length:返回当前窗口历史url记录
  3. 方法:

    1. back():后退

    2. forward():前进

    3. go():包含后退和前进

      参数:

      • 如果是整数n,则前进n个历史记录;如果是负数n,则后退n个历史记录
      • 也可以是url

4.3 DOM(Document Object Model 文档对象模型)

4.3.1 事件

功能:某些组件被执行了某些操作后,去出发某些代码

如果绑定事件:

  • 直接在html标签上,指定事件属性,属性值就是js代码
    • 事件:onclick —> 单击事件
  • 通过js获取元素对象,指定事件属性,设置一个函数
    • document.getElementById(“id”).onclick = function (){方法}

4.3.2 概念

Document Object Model:将标记语言文档的各个组成部分,封装为对象。可以使用这些对象,对标记语言文档进行CRUD的动态操作。

W3C DOM标准被分为3个不同的部分:

  • 核心 DOM:针对任何结构化文档的标准模型
    • Document:文档对象
    • Element:元素对象
    • Attribute:属性对象
    • Text:文本对象
    • Comment:注释对象
    • Node:节点对象,是其他5个对象的父对象
  • XML DOM:针对XML文档的标准模型
  • HTML DOM:针对HTML文档的标准模型**(我们学习的)**

4.3.3 核心DOM

  1. Document
    1. 创建(获取):在html dom中可以使用window.document或者document来获取
    2. 方法
      1. 获取Element对象:
        1. getElementById():根据id属性值来获取元素对象。ID属性值一一般唯一
        2. getElementsByTagName():根据元素名称来获取元素对象们,返回值是一个元素的数组
        3. getElementsByClassName():根据class的属性值来获取元素对象们,返回值是一个元素的数组
        4. getElementsByName():根据name属性值来获取元素对象们,返回值是一个元素的数组
      2. 创建其他DOM对象:
        1. createAttribute(name)
        2. createComment()
        3. createElement()
        4. createTextNode()
    3. 属性
  2. Element
    1. 获取、创建:通过document对象来获取和创建
    2. 方法:
      1. removeAttribute():删除指定的属性。elementNode.removeAttribute(name)
      2. setAttribute():添加新属性。elementNode.setAttribute(name,value)
  3. Node:节点对象。Node 对象代表文档树中的一个单独的节点。这里的节点可以是:元素节点、属性节点、文本节点以及所有在 节点类型这章中所提到的所有其他的节点类型。
    1. 特点:所有DOM都可以被认为是一个节点
    2. 方法
      1. CRUD DOM树:
        1. appendChild(newchild):把新的子节点添加到节点的子节点列表末尾。
        2. elementNode.removeChild(node): 删除子节点。
        3. elementNode.replaceChild(new_node,old_node):某个子节点替换成另一个。
    3. 属性
      1. nodeObject.parentNode:属性返回节点的父节点

4.3.4 HTML DOM

  1. 标签体的设置和获取:innerHTML
  2. 使用HTML元素对象的属性
  3. 控制样式
    1. 使用元素的style属性设置
    2. 提前定义好类选择器的样式,通过元素的className属性来设置其class属性值
  JavaScript知识库 最新文章
ES6的相关知识点
react 函数式组件 & react其他一些总结
Vue基础超详细
前端JS也可以连点成线(Vue中运用 AntVG6)
Vue事件处理的基本使用
Vue后台项目的记录 (一)
前后端分离vue跨域,devServer配置proxy代理
TypeScript
初识vuex
vue项目安装包指令收集
上一篇文章      下一篇文章      查看所有文章
加:2021-08-14 13:57:07  更:2021-08-14 13:58:00 
 
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁

360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年11日历 -2024/11/23 8:50:43-

图片自动播放器
↓图片自动播放器↓
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
图片批量下载器
↓批量下载图片,美女图库↓
  网站联系: qq:121756557 email:121756557@qq.com  IT数码