HTML5+CSS+JS

介绍

他们是由W3C推荐的前端三件套,并且互相之间可以很好地配合

  • HTML:Hyper Text Markup Language
    • 超文本标记语言,|框架
  • CSS:Cascading Style Sheets
    • 层叠样式表,Cascading Style Sheets显示样式
  • JS:JavaScript
    • 脚本|监听时间,执行函数

学习

常用软件,语言文件相关格式 .html文件/文件夹

HBuilder X

.html文件 格式

<!DOCTYPE html>
<html>
	<head>
		<meta charset="utf-8">
		<title></title>
		<!-- 关于网页的一些属性 -->
		<!-- css样式 -->
	</head>
	<body>
		<!-- 主体内容 -->
	</body>
</html>

文件夹

刚学半年web,只是写个作业可以这么用吧(●’◡’●)
前为名字,后为文件格式

项目名 文件夹
	images 文件夹
	css 文件夹
    	网站名1.css
    	...
    html 文件夹 也可以直接把每个网站卸载更外面一层
    	网站名1.thml
    	...

标签

html的内容由一个个标签 嵌套或并列 组成
标签用 <标签名>内容</标签名> 或者 <标签名/>

文字可以直接输入,标签只不过是用来控制他们的 位置和显示效果 的

通用的标签主要
前者较为普遍;后者教为特殊

结构相关

主要用来定一个区域来 划分更小的区域或者直接写入内容。
使用时用前者。

  1. 通用的结构标签有div和span
  2. div更普遍一些
  3. span一般用在刚开始不需要显示的内容上,但可以被div替代

有许多特殊的标签,他们没有特别之处,只是特别拎出来以方便理解文件的整个结构

英文通常的内容
header页眉
nav导航栏
main主要内容
article与上下文无关的独立内容
section其中一个区域
aside侧栏或边栏
footer页脚
detail某个细节的描述
summarydetail的标题

最后两个detail和summary通常是相互配合的。

上面这些都是有着特殊用处的标题,可以用下面的这些替代,但使用时相对复杂一些

内容相关

主要用来直接写入内容。
使用时前后使用方法的皆有
空行之前的表示重要
用前者的有

英文含义
h1标题,字体最大的标题
中间部分字体依次减小的标题
h6标题,字体最小的标题
p段落
br换行
--
hr水平线
sub下标文本
sup上标文本
ins插入文本
del删除文本
wbr此处适合换行
pre预格式文本
address表示地址
bdo文字方向
blockauote长的引用语
q短的引用语
mark定义有记号的文本

table te td th是相互配合组成一个表格的,table>tr>td

表格
table表格
tr行标签
td列标签
th标题列

li必须在ol或ul内。通常用ul li

列表
ol有序列表
ul无序列表
li列表项

表单可以用作问卷等
input属性typr value

表单
form表单
label点击时自动定位到里面的input
input输入
select多选
option多选的一个选项

用后者的有

英文含义
br换行
img引入图片
video引入视频
audio引入
abbr此处适合换行

img video audio使用时需要更多的属性,比如URL路径等
以video为例:<video src="路径" autoplay="autoplay" controls="controls"/>
依次表示 URL路径 自动播放 显示播放器控件
他们有各自的属性
都必须有src属性以表示路径,img只需要src即可显示
各自可以在属性里选择width和height以显示宽度和高度(这两个在css 属性里介绍)
video和audio(他们有一样的可选属性)的其他可选属性在下面显示,一般一个只有一个可选择的值,那个值就是名字自己(言下之意就是,只写自己需要的属性)

英文作用
autoplay自动播放
controls显示控件
loop循环播放
poster定义视频下载时需要的图像,值用路径表示
preloadautoplay时无效,定义文件预加载的时机,有3个值,具体在下面介绍
muted静音

preload的值
auto:默认值,直接加载 音频/视频
metadata:仅加载 音频/视频 元数据
none:不加载 音频/视频

class/id

用于标签的定义
class表示类,可以用于很多类似的标签,以方便使用一样的css样式
id是唯一的,可以为独特的标签单独使用样式

css样式

css一共有3段:选择器{属性:值;…}
样式有3种添加的方法

  1. 直接在标签后面写,如<div style="具体样式">这时候选择器不需要写了
  2. 写在head的style标签内<style>写如css</style>,可以在style同时写入多个不同的样式
  3. 写在单独的css格式文件中,在head中添加<link href="文件路径" type="text/css" rel="stylesheet"/>引入css外部样式

选择器

常见的伪 选择器/元素表示方法
通用选择器*
标签选择器标签名
类选择器.类名 前面是一个下点
ID选择器#ID号
-以下选择器用于分隔不同的选择器
后代选择器一个空格,其实这不是个选择器(但很像),可以选择出所有的后代
分组选择器, 逗号
子元素选择器>
-以下选择器均需紧跟在最上面的选择器后
相邻兄弟选择器+
不相邻兄弟选择器~
属性选择器[属性值] 详细介绍
伪类选择器:单词 详细介绍
伪属性::单词 详细介绍
后一个选择器不一定是前一个的子元素,也可以通过一些符号进行兄弟之间的变化

子元素选择器

div>p
选中选中div中的p子元素(没有中间层的关系)

相邻兄弟选择器

div+p
选中跟在div后的p

不相邻兄弟选择器

div~p
选中前面有相同父元素的div 的p

属性选择器

| 属性选择器 | 介绍,有红字是因为|竖线在编辑器里是特殊字符,在代码块内才能正常显示 |
|–|–|
| [属性] | 具有该属性的 |
|[属性=某值]|属性=某值的|
|[属性~=某值]|属性=用空格分隔的字词列表,某值是其中一个值
|[属性|=某值]|属性=用|分隔的字词列表,某值是其中一个值
|[属性^=某值]|具有该属性,以 某值 开头
|[属性$=某值]|具有该属性,以 某值 结尾
|[属性*=某值]|具有该属性,包含 某值

伪类选择器

这类选择器全部按前面(一部分)选择器的介绍,紧跟在后面,以":"(冒号)为标识符(即以它开头,可以看成选择器的一部分)
以下均不写冒号

伪类选择器介绍
-下面定义的是应用于超链接文本a的4种(鼠标在该元素的)状态,
一起出现(分开使用)时,顺序不可颠倒,否则会使本应在上面的选择器失效
也可以用到其他元素(非a)身上,即当鼠标 移过/在上面/移出时 的活动状态
link正常状态(未访问)
visited被访问之后
hover经过时
active单机被激活时
伪类选择器也有一些分类,见下
结构伪类选择器介绍
first-child第一个子元素
lastchild最后一个子元素
-注意以下4个带()的,()内可以是一个算式或数字,选中符合结果的(可以是多个)
若()内是一个确定的数字,数字超出范围,选择器将无效;
算式里可以有一个字母n,n会自增直到超出父类的子类数量。
n=0等最前面的几个值超出范围问题不大
尽量简单 有效,比如(2n+1)选中所有奇数行
()里面也可以是 odd,选中奇数行;even,选中偶数行
nth-child()正数 第()个子元素
nth-last-child()倒数 第()个子元素
nth-of-type()父元素的 第()个同类子元素
nth-last-of-type()父元素的 倒数 第()个同类子元素
first-of-type父元素的 第一个同类子元素
last-of-type父元素的 倒数 第一个同类子元素
only-child父元素的唯一的子元素,(当然,)可能有很多子元素是唯一的
only-of-type父元素的唯一一个相同类型的子元素
empty没有任何内容的子元素
状态伪类选择器介绍,UI元素一般指包含在form元素内的表单元素
enabled范围内的所有可用UI元素
disabled范围内的所有可用UI元素
checked范围内的所有可用UI元素
否定伪类选择器
not()不匹配该元素的选择器,()里是一个选择器的属性,将选取 不符合该选择器 的元素
目标伪类选择器
target前面的匹配元素被相关URL指向,样式效果才生效,是动态选择器

伪元素

用法:紧跟在后面,用两个":“作为标识符(也可以只用一个,但两个更好)。css样式里需包含content属性,值为带引号的字符(当然也可以什么都不写)
如:div:after{content=”";}

伪元素介绍
before在前面插入一段文字
after在后面插入一段文字

属性及含义

先讲一些主要的值

长度

用途:广泛
用法:有数字和单位组成:200px

当数字为0时,单位可有可无

使用频率:px最常用,其次em
单位有绝对和相对之分

相对单位单位长度的含义
px像素(Pixel)
em相对于父元素字体大小的倍数
ex相对于字符x的高度,通常为字体高度的一半
ch相对于数字0的宽度
rem相对于根元素(html)字体大小的倍数。若未被设置,则相对于浏览器的默认字体尺寸(一般为16px)
vw相对于视口的宽度(视口被均分为100vw)
vh相对于视口的高度(视口被均分为100vw)
xmin相对于视口的 高度或宽度 中较小的那个(小的被均分为100vmin)
vmax相对于视口的 高度或宽度 中较大的那个(大的被均分为100vmax)
绝对单位单位长度的含义
pt点(point)
pc派卡(pica),=我国新四号铅字的尺寸
in英寸(inch)
cm厘米(centimeter)
mmmm(millimeter)
时间

用途:属性transition(变化时间)
用法:数字+单位:200ms
使用频率:都常用

单位含义
s
ms毫秒
角度

用途
用法:数字+单位:120deg
使用频率:第一个deg最常用

单位
deg角度(degrees) ,一个圆 360°
grad梯度(gradians),一个圆 400梯度
rad弧度(radians),一个圆 PI
turn转、圈(turns)
颜色

用途:color,background(-color)
用法:值
使用频率:2和-1最为常用,-1代表最后一个

描述
white白色
具体英文单词↑代表这个单词指代的颜色
rgb(r,g,b)RGB值,rgb分别代表红绿蓝,[0,255]
rgba(r,g,b,a)见上↑.a代表透明度 [0,1]
rgb(r%,g%,b%)RGB值(255*x%),三个值[0,100] ,最后即为0%-100%
#rrggbbRGB值,每个值用 两位 16进制数 表示(大小写不敏感),最后值在0-255
hsl(h,s,l)hsl分别代表 色相(hue,[0,360])/饱和度(saturation,[0%,100%])/亮度(lightness,[0%,100%])
hsla(h,s,l,a)↑ a代表透明度
字符串

只在属性font-family中用到,定义字体类型

{font-family="微软雅黑"}

也可以不用双引号

{font-family=微软雅黑}

属性概要

长度表示一栏:

1:值完全用长度表示,下面不再具体介绍
其他值的类型:值不能用长度表示,能用其他的较规范的表示表示
0:值不能用长度表示,也无法用其他规范的值表示
>1:有多个值,都用长度表示(同时出现多个值:长度可变)

属性含义长度表示
width宽度1
height高度1
position定位方式字符
display显示方式字符
float浮动方式字符
clear清除部分浮动字符
margin外边距1-4
border边框1-4
padding内边距1-4
text-align字体左右的对齐方式字符
text-indent文字之前空多少长1
background背景,包括背景图,背景色,是否重复0
line-heignt行高1
font-family字体字符
font-size字的大小1
font-weight字的粗细1
color字的颜色颜色
opacity透明度0-10
z-index离屏幕远近,越大越显示在上面0
transition状态变化的时间时间
animation动画0
overflow溢出字符

position 定位

含义
absolute绝对定位,相对于最近的定位过的父元素偏移
relative相对定位,在文件流中,相对自生原本在的位置偏移
fixed绝对定位,相对视口偏移
这里提到了偏移,它相对于定位的位置进行偏移
relative在文件流中的意思是,在这个页面中单独占据一块空间,原始位置不会与在文件流中的同级元素重叠

display 显示

block,none,grid较为常用

含义
block块状元素
none不显示
flexflex布局
gridgrid布局
inline行内元素
inline-block行内块元素

grid和flex可以去网上找资料学习

grid布局

着重介绍一下grid布局
含义:可以方便地进行网格状的布局,而后可以随意组合,分配给子元素
有许多属性和它配合使用(前提:display:grid,至少与前3个一起使用,前4个可以更美观地表示)

属性含义用法与解释
grid-template融合了下面上半部分的所有项较为复杂,不讲
grid-template-rows每行的宽度(单独设置)多个 长度/auto/xfr 表示,有几行写几个(空格分开)
可以用repeat(s,值)代替s个连续的重复值
fr代表比例,会将剩下的长度按比例分配
grid-template-colums每列的宽度(单独设置)↑ 有几列写几个
grid-template-areas给每个格子命名,名字一样则合并每行一对双引号,(适当使用回车)
单个双引号内 每列分别有一个代表这个区域的名字。
“aa b” “aa b” “c c”,代表3行2列:
aa占据上面两行的最左边一列;
b占据上面两行的最右边一列;
c占据最后一行的两列
grid-gap行间距和列间距(统一设置)行间距 列间距
grid-row-gap行间距(统一设置)长度
grid-colum-gap列间距(统一设置)长度
place-items内容的 左右和上下 位置情况↓ start/end/center/stretch
align-items内容的 左右 位置情况↑ 开头/末尾/中间/拉伸以盛满
justify-items内容的 上下 位置情况↑ 对align来说,左是开头,右是末尾
place-content整个表格 左右和上下 位置情况↑ 对juestify来说,上是开头,下是末尾
align-content整个表格的 左右 位置情况↑有两个值的(place),用空格分开
justify-content整个表格的 上下 位置情况
以下都是子元素获得父元素分配的某个空间的语句
grid-template-area用指定的名字获取父类给这个名字的空间字符串
以下用 起始/末尾 的(间隔,即gap) 行/列 获得空间
有多个值的用/分隔
第1个间隔行在整个表格的最上方,列:左
即,有n行内容行,就有n+1行间隔行
默认名为从1开始的数字,行列的下标分开计算
或使用上面areas里定义的名字+start/end
如 aa-start 表示区域a的起始行
上:起始行 左:起始列 下:末尾行 右:末尾列
grid-area起始/末尾 的 行/列起始行/起始列/末尾行/末尾列
grid-row起始/末尾 的行起始行/末尾行
grid-row-start起始 行起始行
grid-row-end末尾行末尾列
grid-column起始/末尾 的列起始列/末尾列
grid-column-start起始列起始列
grid-column-end末尾列末尾列
flex布局

着重介绍一下flex布局
含义:可以方便地进行弹性布局,尤其是垂直对齐的问题
有许多属性和它配合使用(前提:display:flex)
| 属性 | 含义
|–|–|–|
|flex-direction| 决定主轴的方向
| justify-content | 子元素在主轴方向上的分布方式
| align-items | 子元素在副轴方向上的分布方式

flex-direction的值含义
row从上到下
row-reserve从下到上
column从左到右
column-reserve从右到左
justify-content的值含义
flex-start主轴起始除处
flex-end主轴末尾处
center主轴中间
space-around元素两边留空隙,每个元素各占一份,不会像magin一样重合
space-between元素之间留空隙,这意味着最边上没有空隙
align-items的值含义
flex-start副轴起始除处
flex-end副轴末尾处
center副轴中间
stretch全部占满
inline-block布局

overflow 溢出处理

不设置这个属性,它可能会在区域之外显示

含义
auto超出长度时,可滚动
hidden隐藏
其他-

margin/border/padding 外边距/边框/内边距

分别代表 外边距/边框/内边距
他们都可以用4个长度值表示,分别代表 上右下左 的长度

也可以有auto值,即自动,它会使两边相等
如 margin:0 auto;
它的左右两边是相等的

后面的值可以省略,但至少有第一个值

第4个值(左)省略,则=第2个值(右)
第3个值(下)省略,则=第1个值(上)
第2个值(右)省略,则=第1个值(上)

他们的四个值可以单独设置,以margin为例子
margin-top,margin-right,margin-bottom,margin-left

float/text-align 浮动/左右对齐

含义(浮动方向/对齐方向)
left
center
right

clear 清除浮动

先清除上一个区域来的浮动(float),而后可以设置自己的浮动

清除浮动
left
right
both左右

background 背景

属性自由书写,其中的属性可以缺少一些或调换顺序

下面是两个较频繁使用的格式

  • 背景色: background: background-color
  • 背景图片: background: url(“”) background-repeat background-position;

有多个子属性

子属性含义
background-image图片链接url(“路径”)
background-repeat是否重复repeat/no-repeat
background-position背景图的起始位置
background-position-x离左边距离长度/x%
background-position-y离上边距离长度/y%
background-color背景色颜色
background-size背景大小长度 长度
background-attachment是否随着滚动而滚动scroll(默认)/fixed(不会)/local(会)

javascript

<script type="text/javascript">
	变量及赋值
	计算语句
	函数
	事件
</script>

一定有事件,因为没有事件,js就没有什么意义

变量

所有类型的变量 都用 var 变量名 = 值; 来定义

数据类型

数据类型含义
Undefined定义但未赋值undefined
Null未定义,由Undefined衍生而来,值==undefnull
Boolean布尔类型true false
Number数字,正数,浮点数等,
可以用纯数字,科学计数法、进制数等表示
数字
String字符串,用单引号或双引号都可字符串
Object项目,上面有属性,如{name:“myname”,age:18}
Array数组可以混杂其他类型,如[1,“myname”]
DOM对象一个具体的标签,如window, document,element
可用数据类型数据类型相关函数目的类型含义与用法
Boolean NumbertoString()String变换成字符串
str=from.toString()
Number的()可以放十进制表示的进制数
-下面两个 String转Number 的函数
出现异常则返回前面的正常的值
-下面的都把源操作数放()里
StringpraseInt()整数(Number)字符串变整数
StringpraseFloat()浮点数(Number)字符串变浮点数
-下面的是三种强制类型转换-
所有Boolean()Boolean空字符串 0 undefined null 值为false,其他的true
所有Number()Number匹配整个数,fasle null为0,true为1
undefined为NaN(非数,not a number)
所有String()String强制类型转换,变成字符串
isNaN判断是不是数

赋值及计算语句

运算符

赋值符含义
=右边赋给左边
运算符
+
-
*
/
%
++自增,放在数的 前/后 不一样
? :三目运算符
( )提高优先级,左括号,右括号
--
判断符
>大于
>=大于等于
<小于
<=小于等于
==值相等
!=值不相等
===值和类型 都相等
!==值和类型 都不相等
--
运算赋值符左边的值加上右边的值,再赋值给左边
a+=b相当于a=a+b
+=
-=
*=
\=
%=

基本计算语句

语句使用
定义及赋值var i=3;也可以单独定义/赋值,定义统一用var
选择(分支)if-else或switch–case-default-break
循环for或while或do-while
跳出break或continue
返回return

事件

一个事件只能绑定一个函数,如果一个事件要做多件事情,都放到一个函数里
表达形式:(被触发)对象.事件属性=…

不只是a有事件属性,其他的标签都有事件属性
事件属性有很多,根据可以触发者(比如鼠标,键盘,窗口)的不同分类
只列举常用的
鼠标触发:onclick(点击),onmouseover(鼠标再其上,和选择器hover有点像,但有不同)
窗口触发(被触发对象必须是window):onload(窗口完成后)

动态绑定
写在js样式里,被包含在其他的事件的函数中绑定
对象需要给出
参照函数的三种绑定方式
静态绑定
直接在标签里绑定,这时候对象就是自己这个标签
参照函数的第2种
比如 <p onclick="函数名(参数)">

函数(function)

函数里的组成与js的组成成分一致

  • 变量及赋值
  • 计算语句
  • 函数
  • 事件

函数定义的3种方式

  1. function 函数名(参数){函数体}
  2. var 函数名=function (参数){函数体}
  3. function (){函数体}

参数可以有多个,定义时不需要声明类型,只需要参数名即可

第2种定义方式可以让定义在标签内的事件连结到这个函数

事件绑定

前两种定义方式

  1. 无参:事件=函数名;

不需要 (参数)

  1. 有参:事件=function(){ 函数名(参数); }

需要用到匿名函数
直接用 事件=函数名(参数); 的结果
是 直接触发事件

第3种定义方式一般直接赋给内部的事件,即 事件=function (){函数体}

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值