html基础学习

HTML

html5基础
网页:

网站是指在因特网上根据一定的规则,使用html等制作的用于展示特定内容相关的网页集合

网页是网站中的一页,通常是html格式的文件,通过浏览器来阅读

网页是构成网站的基本元素,由众多元素构成

html指的是(hyper text markup language)超文本标记语言是一种用来描述网页的语言

超文本:

它可以加入图片,声音,动画,多媒体等内容

它还可以从一个文件跳转到另一个文件,与世界各地主机的文件连接

web标准是由w3c组织和其他标准化组织指定的一系列标准的集合

主要由三部分组成:结构,表现,行为

结构 主要是html

表现 主要是css

行为 交互效果 javascript

三者相互分离

html语法规范

所有的标签都得放在双标签<>里面

比如说<html> </html>结束标签前面加/

单标签少见

标签的关系:

包含关系和并列关系

<html>

    <title> </title>
    <hand> </hand>

</html>

<html> </html>

html的标签 是页面中最大的标签

叫做根标签

<head> </head>

文档的头部 ,在head标签中我们必须要设置的标签是title

.<title>.</title>

文档的标签让页面拥有一个属于自己的网页标签显示在网页上面

<body> </body>文档的主题 元素包含文档的所有内容,网页的内容基本都是放在body里面的

在vscode里面打一个!加tab键就能完成网页的主体

vscode的快捷键

shift alt +下箭头快捷复制多行

ctrl +d可以选择多个相同的单词

ctrl alt + 上下箭头可以选择多个光标去添加

ctrl + h选择修改全部文字

ctrl + g快速定位到某一行

shift + alt +鼠标光标选择 选择多部分区块

ctrl - + 修改字体大小

网站开发工具

.<!DOCTYPE>文档类型的声明标签,告诉浏览器这个页面采取的是html5版本来显示页面

lang语言种类

en英语

zh-CN中文

字符集character set

在<head>标签内通过<meta>标签的charset属性来规定html文档使用的字符编码

.<meta charset = "UTF-8">

标签语义,标签的含义,在合适的地方添加合适的标签可以让页面结构更清晰.

标题标签

.<h1> - <h6>

.<h1>表示是一级标题

标题独占一行

由大到小依次减小,从重到轻随之变

段落标签

.<p>

把html分割从多个段落 会更具浏览器的大小自动换行

换行标签

单标签遇到强制换行

文本格式化标签

粗体,斜体,下划线

粗体 <strong> 或者 <b>

斜体 <em> 或者<i>

删除线<del> 或者<s>

下划线<ins>或者<u>

.<div>和<span>没有语义,是一个盒子用来装内容的 div大盒子一行只能放一个div标签

span小盒子一行可以放很多个,多个span可以横着放置

图像标签

<img src="图片的地址"/ >单标签

src = "图片地址"

src是<img>标签的必要属性:

alt 替换文本 如果图片显示不出来的时候显示的就是alt的文本

title 提示文本,就是鼠标移到图片上显示的文字

width 图像的宽度

height 图像的高度

broder 图像的边框粗细

图像属性写在标签后面,属性没有顺序之分,属性通过键值对来写

文件夹的第一层是根目录

路径

绝对路径

引用文件所在的位置位基础参考,而建立出的目录路径

同一级路径 直接src=图像名字

下一级路径/ src=下一极文件名/图像名字

上一级路径../ src = ../图像名字

相对路径 从盘符开始直接到图像的路径

超链接标签

<a href="跳转目标" target = "目标窗口的弹出方式">文本或者图像 <./a>

href用于连接目标的url地址

target 用于指定连接页面的打开方式 下划线self为默认值会把外部连接在选择这个网页打开,下户线blank为在新窗口打开方式,原来的页面还存在

外部连接

想要外部网页的地址

内部连接

网页间的相互连接,只需要内部网站的文件名

空链接 "#"来表示空链接

下载链接 href的对应的值是.exe或者是.zip文件点击链接就是下载文件

网页元素链接把img标签放在a标签内部就可以实现图片跳转

锚点链接:

可以在href属性中设置属性为"#名字"的形式,如<a href="#two"> 第二集<./a>

在下面写一个id="名字"就可以直接跳转到id这个锚点这边

注释

<!--开头-->注释里面的文字快捷键ctrl + /

特殊字符

 

表格标签

表格可以显示,展示数据,使得结构更清晰

.<table> <tr>

<th> </th>

<td> </td> ​ </tr> </table>

table是定义表格的标签

tr标签用于定义表格的行,必须嵌套在table里面

td用于定义表格中的单元格,必须嵌套在tr里面

th是表头功能标签,位于表格第一行,文字会加粗显示

下面表格属性得写在table里面

align 属性值 left,center,right规定表格相对周围元素的对其方 式

broder 属性值1或"" 规定表格单元是否拥有边框默认为"",没有 边框

cellpadding像数值 规定文字距离边框的距离,默认1像素

cellspacing 像数值 规定单元格与单元格之间的空白,默认2像素

width 像数值或百分比 规定表格的宽度

heigth 像数值或百分比 规定表格的高度

.<table align="center" broder="1" cellpadding="20" cellspacing ="" >

表格结构标签

把表格分成两部分<thead>表格的头部区域,<tbody>表格的主题区域,所有的标签都得放在table里面

合并单元格

跨行合并rowspan="合并单元格的个数"

跨列合并clospan="合并单元格的个数"

 

目标单元格

跨行:最上侧单元格为目标单元格,写合并代码

跨列L最左边单元格为目标单元格,写 合并代码

三部曲

1.先确定是跨行还是跨列

2.找到目标单元格,写上合并方式 = 合并单元格的数量 如<td clospan ="2"> </td>

3.删除多余的单元格

列表标签

列表是用来布局的

列表整齐整洁有序,分为有序列表,无序列表,自定义列表

无序列表

.<ul> <li> <li> </li> </li> </ul>

li里面的东西是没有顺序的是并列的

ul里面只能放li标签

li里面可以放任何元素

有序列表

.<ol> <li> </li> </ol>

ol里面只能放li标签

li里面可以放任何元素

自定义列表

.<dl> <dt> <dd> </dd> </dt> </dl>

dl标签定义列表

dt是列表的头,定义项目,名字

dd是列表的内容,描述每一个项目的名字

dl只能包含dd和dt

dt和dd一般是一个dt对应多个dd,他们两个是并列关系

表单标签

注册账号的时候就可以用表单标签,所有可以通过表单标签来收集用户的信息.

表单由表单域,表单控件,和提示信息三部分组成

 

表单域

.<form action="url地址" method = "提交方法" name = "表单域名称">会把它的范围里面的表单信息数据送到服务器 </form>

action url地址,用于指定接受并出路表单数据的服务器url地址

method get/post 用于设置表单数据的提交方式

name 名称 用于指定表单的名称,以区分同一页面中的多个表单域

表单控件(表单元素)

input(输入表单元素)用于用户输入用户信息

<input type="属性值"/>是单标签

 

用户名:<input type="text">

性别:男<input type="radio"> 女<input type="radio">

 

多个单选框或者复选框得有同一个name才能实现单选的效果

checked按钮可以实现默认勾选

submit提交表单元素给服务器

reset按钮可以还原表单元素的初始内容

file可以打开文件的选择器,用来上传文件

<label>标签为input元素定义的注释

用于绑定一个表单元素,当点击<label>标签内的文本是,浏览器会自动讲光标转到或者选择对应的表单元素上,增加用户的体验

<label for="sex">男</label>

<input type = "radio" name = "sex" id ="sex"/>

for对应的属性要和id属性一样

比如说选择性别,就可以按男而不需要刻意的去按标签

select下拉选择列表

.<select><option>选项1</option> 在option里面selected="selected"默认选项 </select>

textarea文本域元素

用户输入的内容较多的情况下,就用textarea

.<textarea> 文本内容 </textarea>

css3基础

cascading style sheets层叠样式表

css主要是用来美化网页的,布局页面的

css主要用于设置文本内容(字体,大小,对齐方式等),图片的外形以及版面的布局和外观显示样式

css写在 <style>标签类名放在head类名

.<style> 选择器{样式}

p {

color: red;

属性:属性值;

}

</style>

格式要求: 后面留一个空格

选择器和 {}之间也要保留一个空格

基础选择器

标签选择器,就可以把页面所有的相应标签选择出来进行装饰

如果想要差异化选择不同的标签,单独选择一个或者某几个标签,可以使用类选择器

.类名 {

属性: 属性值;

}

.red {

color: red;

}

.<div class='red'> 变红色 </div>

长名或者词组可以使用中横线-来为选择器命名;

尽量使用英文字母,不使用纯数字,中文.

多类名:我们可以给一个标签指定多个类名,从而达到更多的选择目的

在class类名写多个类名,中间通过空格分隔

可以把共性的部分写在一个类里面通过多类名进行传递,便于维护和修改

id选择器

#id名 {

属性1: 属性值1;

....

}

#nav {

color: red;

}

把id为nav元素的内容改为红色

样式通过#定义,结构id调用,id只能调用一次,类选择器可以多次使用

通配符选择器

通过*定义,表示选取页面中所有的标签

字体属性

font-family: 字体;

各种字体之间通过英文的逗号,隔开

多个字体就会从第一个开始,如果浏览器有这个字体就运用,如果没有就跳到下一个字体

常见字体"Microsoft YaHei",tahoma,arial,'hiragino Sans GB';

font-size:字的像素大小

font-size: 12px;(px是像素的意思 )

标题标签是特殊的,想要单独指定文字大小

字体粗细

font-weight: bold;

normal,默认 bold粗体,700 加粗,直接决定加粗或变细的效果normal和数字400等价bold和数字700等价.

文字样式 font-style :normal正常的 italic 斜体

多个font字体设置,按照

font: font-style font-weight font-size font- family;格式来写

font: italic 700 16px 'Microsoft yahei';

可以节省代码

不需要设置的可以省略取默认值,但是font-size和font-family属性必须保留

font: 20px 'Microsoft yahei';

文本属性

定义文字的外观

color 定义文本的颜色 可以用red,green这些来定义最基本的颜色

通过十六进制或者rgb代码来设置高级的颜色,开发中常用

对齐文本

text-align用于设置元素内文本的水平对齐方式

默认left左对齐,right右对齐,center居中对齐

text-decoration 装饰文本,可以给文本添加下划线,删除线,上划线等

none 默认值,没有装饰线,underline 下划线overline 上划线 line- through

链接默认有下划线,可以通过这个来取消这个默认的下划线

文本缩进

text-indent 通常是段落的首行缩进

text-indent: 2em;

建议使用em单位,em是一个相对单位,是相对于当前文字大小的距离

行间距分为:上间距,文本高度,下间距

line-hight控制行间距,控制的是行高(上下行间距)

三种样式表

内部样式表(嵌入式)

把css写在html内部,单独放在style标签里面,style一般放在head标签里

通过这种方式,可以方便控制当前页面中的元素样式设置

代码结构清晰,但是样式和结构并没有完全分离

行内样式表(行内式)

在元素标签内部的style属性中设定css样式.适用于修改简单样式

.<div style= "color: red;font-size: 12px">

青春不常在,抓紧谈恋爱</div> 外部样式表(链接式)

样式单独写在css文件中,之后把css文件引入html页面中使用

1.新建一个后缀名为.css的样式文件,把所有css代码放入此文件中

2.在html页面中,使用<link>标签引入这个文件

<link rel="stylesheet" href="css文件路径">

.<hr>水平线标签单标签

chrome 调试工具

按f12或者右键按检查就可以打开调试工具

ctrl+滚轮可以调整开发者工具代码大小

左边是html元素结构,右边是css样式

右边css样式可以改动数值和查看颜色

ctrl+0复原浏览器大小

点击元素,如果右侧没有样式引入,极有可能是类名或者样式引入错误

如果有样式,但是样式前面有黄色感叹号,则是样式属性书写错误

Emmet语法

使用缩写提高html/css的编写速度

1.快速生成html语法

生成标签直接输入标签名按tab键即可

如果要生成多个相同的标签 加上* 如div*3 再按tab键就会生成三个div标签

如果有父子级标签 可以使用 > 如 ul>li 再按tab键就可以了

兄弟关系的标签 使用+就行 如 div+ p 再按tab键

生成带有类名或者id名字的,直接写.demo 或者 #two tab键就可以了

.nav + tab键生成带 class="nav" 的标签,默认是div形式

生成别的标签如p 通过 p.nav +tab键

#banner +tab键生成带 id="banner" 的标签

如果生成的div类名是有顺序的,可以使用自增符号 $

.demo$ 中间的$就是默认的序号排序,从1开始,配合*来创建

如果想要再生成的标签内部写内容可以用{}来表示

如 div{你好} 就会生成.<div>你好</div>

2.快速生产css语法

text-align: center

类似于这个 直接tac+tab就行

我们只需要写它的首字母就行

复合选择器

建立在基础选择器上,对基础选择器进行组合形成的

复合选择器可以更准确,更高效的选择目标元素

常用的复合选择器包括:

后代选择器

又称为包含选择器,可以选择父元素里面的子元素,器写法就是把外层标签写在前面,内存标签写在后面,中间用空格分隔.当标签发生嵌套时,内层标签就成为外层标签的后代.

如我们要修改ol 里面的li标签里面的东西,我们就再style里面

写ol li {} 就可以只改变ol 里面的li标签

元素1 元素 2 {样式声明}元素1父级,元素2是子级也可以是孙子级,只要是元素1的后代就可以

子代选择器

子代选择器只能选择作为某元素的最近的一级子元素

元素1>元素2 {样式声明}

并集选择器

可以选择多组标签,同时为他们定义相同的样式

div,

p {}这种写法就叫做并集选择器通过英文,逗号分割,竖着写

伪类选择器

用于向某些选择器添加特殊的效果

书写时用:表示

链接伪类选择器

a:link 选择所有未被访问过的链接

a:visited 选择所有已被访问的链接

a:hover 选择鼠标指针位于其上的链接

a:active 选择活动链接(鼠标按下未松开的链接)

注意事项 按照lvha的顺序进行书写

a链接再浏览器中具有默认样式,所以我们实际工作中都需要给链接单独指定样式

focus 伪类选择器

用于选取获得焦点的表单元素,焦点就是光标一般情况input标签类表单元素才能获取

css的元素显示模式

网页的标签很多,再不同的地方会用到不同的标签,了解他们的特点可以更好的布局我们的网页

html一般分为块元素和行内元素两种类型

块元素

h1~6,div,ul,ol,li等

特点:独占一行,高度宽度外边距一级内边距都可以控制,宽度默认是容器(父级宽度).是一个容器或者盒子,里面可以放行内或者块内元素

文字类的元素内不能使用块级元素

.<p>标签里面不能放块级元素

还有h1~h6

行内元素

a,strong,b,em,i,del,s,ins,u,span

相邻的内元素再一行上,一行可以显示多个

高,宽直接设置是无效的.

默认宽度就是它本身内容的宽度

行内元素只能容纳文本或其它行内元素

链接里面不能再放链接

.<a>里面可以放块类元素,但是把a转换成块级模式最安全

行内块元素<img/>,<input/>,<td>同时具有行内元素和块元素的特点

和相邻的行内块元素放一行上,但是他们之间会有空白缝隙,一行可以显示多个,默认宽度就是它本身内容的宽度,高度,行高,外边距都可以控制

元素显示模式的转换

比如说增加链接<a>的触发范围

diaplay:block;写在style里面,转换成块类元素

display:inline;换成行内元素

displau:inline-block;转换成行内块元素

snipaste截图工具,f1截图,同时测量大小,设置箭头,书写文字等.f3左面置顶,点击图片alt可以取色,esc取消图片显示

单行文字垂直居中,让文字的行高等于盒子的高度,就可以让文字在当前盒子内垂直居中

line-height: ;属性值和height:属性值;一样

css背景

背景颜色,图片,平铺,图片位置,图片

background-color:颜色值;默认是transoarent透明的;

background-image: url(地址);非常便于控制位置

background-repeat: repeat|no-repeat|repeat-x|repeat-y;默认是repeat平铺的

背景图片会压住背景颜色

background-position:x y;属性改变图片在背景中的位置

如果xy都是方位名词,则两个值前后顺序无关

如果只指定了一个方位名词,另一个省略,则第二个值默认居中对齐

参数也可以是精确单位,第一个肯定是x坐标,第二个是y坐标

如果只指定一个值那就是x坐标,另一个默认居中对齐

也可以是混合单位,得记住第一个值是x坐标,第二个值是y坐标

背景图像固定

background-attachment: scroll |fixed 默认是滚动的

也可以和前面font一样

background:背景颜色 背景图片地址 背景平铺 背景图像滚动 背景图片位置

按照这个顺序来写数值

background:black url() repeat fixed center top;

背景色半透明,可以透过盒子看到后面的内容

background: rgba(0,0,0,0);最后一个参数是alpha透明度

范围是0~1

让盒子背景色半透明,盒子内容不受影响

css的三大特性

重叠性

相同选择器给设置相同的样式,此时一个样式就会覆盖另一个冲突的样式,重叠性主要解决样式冲突的问题

样式冲突:就近原则,那个样式离结构近,就执行哪个样式

样式不冲突的部分就不会层叠

继承性

子标签继承父标签的某些样式,text-font-line-这些元素开头和color元素都可以让子类继承与父类

特殊:行高的继承,行高也可以不跟单位,如 12px/1.5

1.5代表当前文字大小的1.5倍

优先级

同一个元素指定多个选择器,就会有优先级的产生

选择器相同,执行层叠行

不同的话通过选择器权重执行

继承或* < 元素选择器 <类选择器,伪类选择器<id选择器<行内选择器 style=""<!important 重要的

元素选择器,就是选择全部的一个标签

权重叠加 如果是复合选择器,就会进行权重叠加

页面布局三大核心:盒子模型,浮动,定位

盒子模型

网页布局过程

1.先准备号对于的网页元素,基本都是盒子box

2.利用css设置好盒子样式,然后摆放到对应位置

3.往盒子里面装东西

盒子模型就是把html页面中的布局元素看作一个矩形的盒子

border边框,content内容,padding内边距,margin外边距

边框broder:边框粗细,样式,颜色

broder : broder-width | broder-style | broder-color

broder-style 默认是solid实线边框

 

简写方式 broder: 1px solid red;三个没有顺序之分

边框可以分开写如border-top: 1px solid red;表示只设定上边框

表格的细线边框

broder-collapse 控制相邻单元格的边框

broder-collapse:collapse ;表示相邻边框合并在一起

边框会影响盒子的实际大小,也就是边框是加在盒子外面的,盒子大小不包括边框,加入了边框就会使得盒子实际大小偏大

内边距

padding边框和内容的距离

padding-left|right|top|buttom

padding: 5px;一个值代表上下左右都是5个像素

padding: 10px 5px;两个值代表上下10个像素 左右5个像素

padding:5px 10px 20px;三个值代表上5像素左右10像素下20像素

padding:5px 10px 20px 30px;四个值代表上5像素,右10像素,下20像素,做30像素,顺时针来看

padding也会影响盒子的实际大小也会使得盒子实际变大

合理使用padding就可以让字数不同的盒子大小适合

如果盒子没有指定weight,盒子就和浏览器一样宽这时我们就可以使用padding的适合不会撑开盒子

外边距margin

设置外边距,就是盒子和盒子之间的距离

margin-left|right|top|bottom

margin简写方式和padding一模一样

外边距可以让盒子水平居中显示,得满足两个条件

1.盒子必须指定了宽度(weight)

2.盒子左右的外边距设置为auto就行

但是对于行内元素和行内块元素无效,对于行内元素和行内块元素使用text-align就行

嵌套块元素垂直外边距的塌陷

对于两个嵌套的块元素,父元素右上边距同时子元素也有上边距,此时父元素会塌陷较大的外边距值

也就是子元素上边界实际上作用在了父元素身上

解决方法:给父元素定义一个上边框|给父元素定义内边距|个父元素添加overflow:hidden(推荐)

清楚内外边距

如ul有默认40像素的内边距,body有默认8像素的外边距,默认值可能不同

*{

margin: 0;

padding: 0;

}

就能全部修改

切图工作在ps里面完成

浮动
定位
h5c3提高
网站开发
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值