Python后台开发基础--Web前端基础

1 Html

1.1 Html介绍

  • HTML是 HyperText Mark-upLanguage 的首字母简写,意思是超文本标记语言,
  • HTML不是一种编程语言,而是一种标记语言
  • 超文本指的是超链接,标记指的是标签,是一种用来制作网页的语言,这种语言由一个个的标签组成,
  • 用这种语言制作的文件保存的是一个文本文件,文件的扩展名为.html或者.htm,
  • html文档也叫Web页面,其实就是一个网页,html文件用编辑器打开显示的是文本,可以用文本的方式编辑它,
  • 如果用浏览器打开,浏览器会按照标签描述内容将文件渲染成网页,显示的网页可以从一个网页链接跳转到另外一个网页。

1.2 Html语法

  • HTML是由:标签和内容构成

  • HTML标签(标记)的语法是由 < 和 > 括起来。

  • HTML标签有两种:双标签:<标签名>… 和 单标签:<标签名/>

  • HTML标签中还可以添加属性:<标签名 属性名1=“值1” 属性名2=“值2”属性名n=“值n”>…

  • HTML标签规范:标签名小写、属性使用双引号、标签要闭合。规范不遵守浏览器不会报错,会尽量解析,大不了不显示效果

1.3 Html结构

 
     
    <head>       
                
        <title\>网页标题\title\> 
         
	head> 
<body>
	网页显示内容 
body> 
html> 

1.4 Html—Header

说明 代码
设置网页编码
关键字
描述
网页标题 本网页标题\
导入CSS文件
CSS代码 标签来设置css样式

2.3.2.2 实例
<style type="text/css">     ....css样式代码style> 
<!-- 特点:作用于当前整个页面 --\>

2.3.3 外部导入方式(外部链入)

2.3.3.1 概念

在head标签中使用标签导入一个css文件,在作用于本页面,实现css样式设置

2.3.3.2 实例
<link href="文件名.css" type="text/css" rel="stylesheet"/>

2.4 选择器

2.4.1html选择符(标签选择器)

2.4.1.1定义

把html标签作为选择符使用

2.4.1.2实例
如: p{....}  网页中所有p标签采用此样式 
    h2{....}  网页中所有h2标签采用此样式

2.4.2 id选择符

2.4.2.1 定义

#id名{样式…}

2.4.2.2 实例
# id选择符只在网页中使用一次 
<html标签 id="id名">...html标签>

2.4.3 class类选择符

2.4.3.1 定义

使用点.将自定义名(类名)来定义的选择符

2.4.3.2 实例
...html标签>        
.mc{color:blue;} /* 凡是class属性值为mc的都采用此样式 */ 
p.ps{color:green;}  /* 只有p标签中class属性值为ps的才采用此样式*/ 

注:类选择符可以在网页中重复使用

2.5 常用样式

2.5.1 color

属性 说明
HSL 通过对色调(H)、饱和度(S)、亮度(L)三个颜色通道的变化以及它们相互之间的叠加来得到各式各样的颜色. background-color:hsl(240,100%,50%);color:white;
HSLA 色调(H)、饱和度(S)、亮度(L)、透明度(A); background-color: hsla(0,100%,50%,0.2);
RGB 颜色: 红®、绿(G)、蓝(B)三个颜色通道的变化 background-color:rgba(200,100,0)
RGBA 颜色: 红®、绿(G)、蓝(B)、透明度(A) background-color: rgba(0,0,0,0.5);

2.5.2 font

属性 说明
font-size 字体大小
font-family 字体 比如: 宋体,Arial
font-style 字体格式,参数如下 normal正常; italic斜体; oblique倾斜的字体

2.5.3 文本属性

属性 说明
text-indent 首行缩进
text-overflow 文本的溢出是否使用省略标记(…)。clip|ellipsis(显示省略标记)
text-align 文本的位置:left center right
text-transform 对象中的文本的大小写:capitalize(首字母)|uppercase大写|lowercase小写
text-decoration 字体画线:none无、underline下画线,line-through贯穿线
text-shadow 文本的文字是否有阴影及模糊效果
vertical-align 文本的垂直对齐方式
direction 文字流方向。ltr | rtl
white-space:nowrap /* 强制在同一行内显示所有文本*/
letter-spacing 文字或字母的间距
word-spacing 单词间距
line-height 行高
color 字体颜色

2.5.4 背景属性:background

属性 说明
background- color 背景颜色
background-image 背景图片
background-repeat: 重复平铺
background-attachment 是否固定背景 scroll:默认值。背景图像是随对象内容滚动 fixed:背景图像固定
background-position 定位

3 JavaScript

3.1 JavaScript简介

  • JavaScript一种直译式脚本语言,是一种动态类型、弱类型、基于原型的语言,内置支持类型。它的解释器被称为JavaScript引擎,为浏览器的一部分,广泛用于客户端的脚本语言,最早是在HTML(标准通用标记语言下的一个应用)网页上使用,用来给HTML网页增加动态功能

  • JavaScript 通常被直接嵌入 HTML 页面。

  • JavaScript 是一种解释性语言(就是说,代码执行不进行预编译)。

  • 特点:弱类型和基于对象。(因为面向对象需要具有封装、继承、多态的特征)

  • JavaScript语言中包含三个核心:ECMAScript基本语法、DOM、BOM

3.2 JavaScript语法

  • 区分大小写:变量名、函数名、运算符以及其他一切东西都是区分大小写的。

  • 和Python一样属于弱类型语言。

  • 每行结尾的分号可有可无。(js中的每条语句之间的分割符可以是回车换行也可以是";"分号(推荐))

  • 脚本注释:// 单行注释 和 /* 多行注释 */

  • 括号表示代码块:{ }

  • 变量的定义:使用var关键字来声明。

  • 变量的命名规范是:字母数字,$符和下划线构成,但是不可以以数字开始。变量名不可以使用关键字.

  • typeof函数获取一个变量的类型

类型 说明
undefined undefined
boolean 布尔类型
number Number 类型 (整数、浮点数)
string String 类型(采用""、 ‘’)
object 变量是一种引用类型或 Null 类型
function 函数类型

3.3 JavaScript引入方式

3.3.1 script标签

  1. 属性
属性 说明
charset(可选) 字符集设置、
src(可选) 使用外部的js脚本文件
type(必选) 类型:值 text/javascript
  1. 实例
<script type="text/javascript"> 
    <!-- javaScript语言 //--> 
script>

3.3.2 事件写入

#在html标签的事件中,超级链接里。 
<button onclick="javaScript语言">button> 
<a href="javascript:alert('aa');alert('bb')">点击a> 

3.3.3 外部导入方式(推荐)

<script type="text/javascript" src="my.js">script> 

3.4 JavaScript数据类型

3.4.1 类型

类型 说明
undefined undefined
null null
boolean boolean
number 八进制数和十六进制数 012 浮点数 特殊的 Number 值
string string
object引用类型 引用类型通常叫做类(class),也就是说,遇到引用值,所处理的就是对象。

3.4.2 实例

//数字: 
var numberObject = 1; 

//字符串: 
var  stringObject = "1"; 

//布尔: 
var booleanObject = true; 

//空: 
var nullObject = null; 

//未定义: 
var undefinedObject = undefined; 

//对象 
var jsObject = Object;

注: Object 对象自身用处不大,不过在了解其他类之前,还是应该了解它。因为ECMAScript 中的 Object 对象与 Java 中的 java.lang.Object 相似,ECMAScript中的所有对象都由这个对象继承而来,Object对象中的所有属性和方法都会出现在其他对象中,所以理解了 Object对象,就可以更好地理解其他对象。

3.5 JavaScript类型转换

方法 说明
Number() 强转一个数值(包含整数和浮点数)。
parseInt() 强转整数
parseFloat() 强转浮点数
isNaN() 检测参数是否不是一个数字

3.6 JavaScript—alert对话框

  1. 基础语法:alert([对话框内容]);

  2. 实例效果

Python后台开发基础--Web前端基础_第4张图片

3.7 JavaScript运算符

3.7.1 算数运算符

运算符 描述 例子 结果
+ x=1+1 x = 2
- x=1-1 x =0
* x=2*3 x = 6
/ x=4/2 x = 2
% 取余数 x = 5/2 x=1
++ 叠加 x = 2 x ++ x = 3
叠减 x = 2 x – x = 1

3.7.2 赋值运算符

运算符 例子 等价于 结果
= x=5 x=5 x=5
+= x += 2 x = x +2 x =7
-= x -= 2 x = x - 2 x =3
*= x *= 2 x = x * 2 x = 10
% x%2 x = 5/2 x=1
/= x /= 2 x = x / 2 x=2.5
%= x %= 2 x = x % x = 1

3.7.3 比较运算符

运算符 描述
== 值相等
=== 类型和值都相等
!= 不等于
> 大于
< 小于
>= 大于等于
<= 小于等于

3.7.4 逻辑运算符

运算符 描述
&
&& 短路与
|
|| 短路或
!

3.7.5 逗号运算符

#用逗号运算符可以在一条语句中执行多个运算。 var iNum1=1, iNum2=2, iNum3=3 

3.8 判断循环语句

3.8.1 判断语句

 if... 
 else ...
 
 if ...  
 else if ... 
 else... 

3.8.2 多分支语句

switch(){case :。。。。} 
switch (i) { 
	case 20: alert("20");
	break; case 30: 
	alert("30"); 
	break; 
	case 40: 
	alert("40"); 
	break; 
		default: alert("other");
}

3.8.3 循环语句

//for,while,do...while 
//for-in 语句: 语句是严格的迭代语句,用于枚举对象的属性。 
var a = [10,20,30,40,50]; 
//迭代的是数组的下标。 
for(i in a){
    document.write(a[i]); 
} 
//输出: 102030405

注:

  1. break 和 continue 语句对循环中的代码执行提供了更严格的控制。

  2. with 语句用于设置代码在特定对象中的作用域。

3.9 JavaScript函数和对象

3.9.1 函数的定义

3.9.1.1 function语句定义函数
function 函数名([参数列表..]{
    函数体。。。 [return 返回值;] 
}
3.9.1.2 Function()构造函数定义函数(不常用)
//格式: 
var 函数名 = new Function(“参数1”,”参数2”,”参数3”……”函数体”); 
//如: 
var 函数名 = new Function(”x”,”y”,var z=x+y;return z;);
3.9.1.3 表达式定义函数
//格式:var 函数名 = function(参数1,参数2,…){函数体}; 
//例如: 
//定义函数 
var add = function(a,b){ 
    return a+b;           
} 
//调用函数 document.write(add(50,20));
3.9.1.4 arguments对象
  • 在函数代码中,使用特殊对象arguments,开发者无需明确指出参数名,就能访问它们。

  • 例如,在函数 sayHi() 中,第一个参数是 message。

  • 用 arguments[0] 也可以访问这个值,即第一个参数的值(第一个参数位于位置0,第二个参数位于位置 1,依此类推)。

3.9.1.5 变量和参数
  • 函数外面定义的变量是全局变量,函数内可以直接使用。

  • 在函数内部没有使用var定义的=变量则为全局变量,

  • 在函数内使用var关键字定义的变量是局部变量,即出了函数外边无法获取。

3.9.2 常用的内置函数

方法 说明
escape() 字串编码
unescape() 字串反编码
eval() 将参数字符串作为脚本代码来执行
isNaN() 检测参数是否不是一个数字

3.9.3 对象的定义和使用

3.9.3.1 原始方式构建对象
var myObject = new Object(); 
myObject.name = “lijie”; 
myObject.age = 20; 
myObject.say = function(){...}
3.9.3.2 创建自定义对象
var 对象名 = {属性名1:属性值,属性名2:属性值2,…….}
3.9.3.3 自定义构建函数创建对象
function pen(name,color,price){ 
    //对象的name属性 
    this.name = name; 
    //对象的color属性 
    this.color = color; 
    //对象的piece属性 
    this.price = price; 
    //对象的say方法 
    this.say = function(){}; } 
    var pen = new pen(“铅笔”,”红色”,20);
    pen.say(); 
3.9.3.4 检测常用的方法
  1. typeof() //global对象的其中一个方法,typeof()

  2. 对象.constructor; //查看当前对象的构造函数是谁

if(arr.constructor==Array){ alert("数组"); 
//数组推荐用这种方法,因为typeof得到是object } 

3.10 JavaScript—DOM

3.10.1 基本概念

  • HTML DOM 定义了访问和操作HTML文档的标准方法。

  • HTML DOM 把 HTML文档呈现为带有元素、属性和文本的树结构(节点树)。

  • DOM 被分为不同的部分:

    • Core DOM 定义了一套标准的针对任何结构化文档的对象
    • XML DOM 定义了一套标准的针对 XML 文档的对象
    • HTML DOM 定义了一套标准的针对HTML 文档的对象。
  • 节点:根据 DOM,HTML 文档中的每个成分都是一个节点。 DOM 是这样规定的:

    • 整个文档是一个文档节点
    • 每个 HTML标签是一个元素节点
    • 包含在 HTML 元素中的文本是文本节点
    • 每一个HTML 属性是一个属性节点
    • 注释属于注释节点
  • 节点彼此间都存在关系。

    • 除文档节点之外的每个节点都有父节点。
    • 大部分元素节点都有子节点。
    • 当节点分享同一个父节点时,它们就是同辈(同级节点)。
    • 节点也可以拥有后代,后代指某个节点的所有子节点,或者这些子节点的子节点
    • 节点也可以拥有先辈。先辈是某个节点的父节点,或者父节点的父节点
  • 查找并访问节点 你可通过若干种方法来查找您希望操作的元素:

    • 通过使用 getElementById()和 getElementsByTagName() 方法
    • 通过使用一个元素节点的parentNode、firstChild 以及 lastChild childNodes属性
    • nextSibling返回节点之后紧跟的同级节点。previousSibling返回节点之前紧跟的同级节点。
  • 节点信息 每个节点都拥有包含着关于节点某些信息的属性。这些属性是:

    • nodeName(节点名称)
    • nodeValue(节点值)
    • nodeType(节点类型)
  • nodeName 属性含有某个节点的名称。

    • 元素节点的nodeName 是标签名称
    • 属性节点的 nodeName 是属性名称
    • 文本节点的nodeName 永远是 #text
    • 文档节点的 nodeName 永远是 #document

3.10.2 DOM对象参考

方法 说明
Document 代表整个 HTML 文档,可被用来访问页面中的所有元素 常用集合属性:forms
Anchor 代表 元素
Area 代表图像映射中的 元素
Base 代表 元素
Body 代表 元素
Button 代表
Event 代表某个事件的状态
Form 代表
元素
Frame 代表 元素
Frameset 代表 元素
Iframe 代表