首页 > 其他分享 >html5+css3

html5+css3

时间:2023-10-12 21:35:58浏览次数:43  
标签:css3 定位 浏览器 标签 元素 html5 选择器 属性

一、HTML

1、浏览器内核又可以分成两部分: 渲染引擎(layout engineer)和 JS引擎(rendering engine)

后来的JS的发展独立出来,

常用5大浏览器 分别是:IE(edge)、Chrome、Firefox、Safari、opera。

浏览器内核有那些? 分别被使用在那些浏览器?

Trident(IE)

国内很多双核浏览器其中一核就是trident,美其名曰:兼容模式。

window10发布后,将其内置浏览器命名为edge,Edge最显著的特点就是新内核EdgeHTML。

Gecko(Firefox)

火狐浏览器使用的内核就是gecko,gecko特点就是代码完全公开,开发度很高,前世界程序员都可以为其编写代码,增加功能。缺点跟新频繁导致后面没落。

webkit(safari)

safari是苹果公司的浏览器,使用的是大名鼎鼎如雷贯耳的webkit内核,但是很多人错误把webkit叫做

Chrome内核(即使Chrome内核换成了blink),

Chromeium/Blink(Chrome)

2013年4月3日,Chrome和webkit闹掰了,Chromeuin项目研发blink渲染引擎(浏览器内核),内置于Chrome浏览器中,其实blink是webkit分支

presto(Opera)

presto是Opera之前使用的内核,当Chrome出了新的blink内核,抛弃了旧爱presto。

2、web标准构成

web标准不是某一个标准,是由W3C组织制定一系列的标准化集合。主要包括:结构(structure)、表现(presentation)、行为(behavior)三方面。

结构标准:用户网页元素结构整理和分类,XML XHTML

样式标准:用户设置网页元素的字体颜色尺寸大小的外观样式,CSS

行为标准: 行为是网络模型的定义及交互编写,主要包括DOM和ECMAScript两部分 

<!doctype> 看到这个表示用的html5 的文档。

<meta charset="utf-8"> utf-8是用常用的字符集编码方式

3、html标签语义化, 所谓语义化就是标签的含义。

为什么语义化呢?

1》为了方便代码的阅读和维护

2》同时让浏览器和网络爬虫可以跟好的解析,从而分析内容。

3》使用语义化标签会具有更好的的搜索引擎优化

标签为<div></div>闭合标签 、<img/>单标签

标题标签(6个)H1~H6,

段落标签:<p></p>,

水平线标<hr/>,

换行标签<br/>,

图像标签<img>,

链接标签<a> 

base标签(head标签里面统一跳转target属性), 

无序列表标签(两个组成)ul > li ,

有序列表标签(两个组成)ol > li,

自定义列表(三个组成)dl>dt>dd

div span 没有语义化,是页面布局只要的的两个盒子,

文本格式化标签:

(1)b、strong 文字加粗方式显示,推荐用strong

(2)i、em文字以斜体方式显示,推荐用em

(3)s、del文字以删除线方式显示, 推荐使用del

(4)u、ins文字以下划线的方式显示,建议用ins,

特殊自负标签()代替代码

   空格    &nbsp

< 小于号 &lt

> 小于号 &gt

& 和号     &amp

¥ 人民币 &yen

©️ 版权号 &copy

®️ 注册商标 &reg

。摄氏度 &deg

正负号 &plusmn

✖️ 乘号 &times

➗ 除号 &divide

平方号 &sup2

立方号 &sup3

-中线号&mdash

二、CSS

什么是css(cascading style sheets)的缩写,翻译为‘层叠样式表’或者‘级联样式表’,简称“样式表”

CSS作用:主要是给html页面设置外观或者样式。

CSS与语法规范

#divId{width: 100px} ,css由选择器 和声明组成声明, 声明为大括号每一条语句,每条语句里由属性:值组成

#divId 》选择器 ,{}内的每一条语句句》声明, width》属性,100PX》值。

CSS书写方式

有三种: 行内式、嵌入式,外链式。

行内式:将CSS代码写入html中标签的style属性中。(style是个通用属性)

嵌入式:通过html中的<style></style>标签将CSS 代码嵌入到html网页 中,

外链样:以》.css为扩展名的文件通过<head>标签中<link>标签将文件引入,链接到到html文件(Css文件不能单独运用)

代码实例: <link rel="stylesheet" href="./src/style.css">

css总结:

(1) 使用嵌入式书写方式的代码,它只能作用于当前的html文件

(2) 使用外链式书写方式的代码,它可作用于多个html文件

(3) 使用行内式书写方式的代码,它只能当前标签元素的样式。

1、选择器

什么是选择器,通过制定的语法规则选取对应的html标记,然后给对应的htm标记设置样式。

选择器分为四大类:基本选择器,复合选择器,伪类选择器,属性选择器。

 选择器:*通用选择器,标签选择器,.class选择器,#id选择器

1》复合选择器

多元素选择器:同时选择多个选择器,选择器之间用逗号分开。#id1,#id2,.class1

后代元素选择器:匹配所有e元素的后代元素f,e和f之前空格,#parent  #child

子元素选择器:e匹配所有子元素f, e>f , #parent>#child

相邻元素选择器:匹配所有紧随e元素的所有同级兄弟 #parent+#brother

2》伪类元素选择器

伪类选择器是用来给超链接的不同状态设置样式

:link(向未被访问的链接添加样式)

:visited(向已被访问的链接添加样式)

:hover(当鼠标悬停在元素上方时,向元素添加样式)

:active(鼠标放在元素上面时,点击的一瞬间)

3》属性选择器

匹配元素中带有[属性名]设置元素的样式。

[属性名]{声明语句,声明语句}

[属性名=值]{声明语句}

[属性名^=值]{声明语句}(^开头属性什么的匹配)

[属性名$=值]{声明语句}($结尾属性等于什么的匹配)

[属性名*=值]{声明语句}(^开头属性匹配)

(1)选择器优先级分类都有对应的值大小排序,行内样式用1000,ID:100,class:10,e:1,值被称为权重值。

行内样式》ID选择器》class选择器》标签选择器

(2)!important属性

important在英文里是重要的意思,在CSS里它主要是提升权重值的,权重值无限大。

important提升了属性的权重并没有提升选择器的优先级。它不能提升继承过来的属性权重。 

一个标签内可以携带多个选择器类名,一个标签内多个类名内的属性样式冲突,css代码标准谁在后面就一谁为标准。

2、属性

尺寸属性:height、width (auto,px, %)

文本与字体属性:

// 文本属性

color[文本颜色](#FF0000,red,rgb(2,3,4))、

text-align[水平对齐方向](left、right、center)、

text-decoration[文本修饰线](none,underline下划线,overline上划线,line-through删除线)

text-transform[大小写转换首字母大字](capitalize 首字母大写,uppercase全部大写,lowercase全部小写)

line-height[行高](固定值或百分比)

text-indent[首行缩进,允许负数](px , em)

letter-spacing[字符间距](px)

word-spacing[单词间距](px)

//字体属性

font-style(normal正常,italic斜体)

font-weight(normal,bold粗细)

font-size(px单位大小)

font-family(雅黑,宋体。。。)

font(以上值对应属性,一定要按顺序)

// 列表属性, 这里的列表指的是有序列表和无序列表

list-style-type【列表前项目符号类型】(none,disc实心圆,square实心小方块,circle空心圆)

list-style-position【列表项标记的放置位置】(inside在里面,outside在外面)

list-style-image【图像设置为列表项标记】(URL路径)

list(在一个声明中所有列表属性)

//样式继承性

并不是所有样式都能够被继承,只有文本和字体样式属性可以被继承。其他的样式属性都不可以被继承。

// 背景样式属性

background-color[背景色](#ff0000,red,rgba(1,2,3,0.5))

background-image[背景图像](url(图像路径和名称))

background-repeat[背景图是否重复](repeat,repeat-x,repeat-y,no-repeat)

background-position[背景图像水平位置和垂直位置](center或x%【left,center,right】,y%【top,center,bottom】,或xpos,ypos )

background-attachment[设置背景图像是否固定或随着页面的其余部分滚动](scroll滚动,fixed固定)

background[简写,综合属性值]()

// display 显示,

它用来进行块级元素和行内元素的切换,显示与隐藏这两属性一般都是JS上用。

inline、block、none、flex、inline-block inline-flex,table,

3、文档流

1》标准文档流:html文档是从上到下,从左到右的标准。

4、浮动

说浮动之前,块元素和行元素没有在上面的笔记里提到。

元素分为:块级元素和行内元素,以及行内块元素

块级元素的特性:可以设置宽高。

行内元素的特性:让多个元素排在一行展示。

想要元素们既有块级元素的特点也有行内元素的特点,使用浮动脱离文档流可以实现。

float(left,right)浮动属性两个属性值。

1》float特点:

(1)浮动脱离标准文档流,它不占用空间。(就像云或者其他悬空漂浮物不占地面面积)

(2)浮动元素它的层级要比标准文档流的层级高。它会将标准文档流的元素给压住。

2》清除浮动

注意只要有浮动,那么必须有清除浮动,因为经过浮动的元素,它影响了下面的元素排版,它浮动脱离父元素不被包裹。

只要清除浮动,他不会影响后面的元素排版,浮动元素的父元素会将浮动元素从视觉上包裹。

清除浮动有三种方法

∆给浮动元素设置一个固定高。(给父元素高的撑内容)

∆使用清除浮动的样式属性clear。(浮动元素添加高度,给最后一个浮动元素的下面新建一个div添加属性clear:both)

∆使用overflow:hidden这个属性来清除浮动。(overflow用来将溢出部分隐藏,也可以清除浮动。给浮动的父元素添加属性值,overflow:hidden);

5、盒子模型

在CSS盒子的组成部分?

内容(content)+内填充(padding)+边框(border)+外边距(margin)

一个盒子的主要属性:width height padding border margin

padding和margin,四个方向属性,上下左右(top,right,bottom,left),简写属性顺时针。

margin 塌陷现象

盒子之间相邻的盒子margin不会重叠,取较大的值为准。

margin居中,值0 auto;

margin是用来描述兄弟元素之间的关系,不是用来描述父子之间的关系,父子之间父元素使用padding。(给父元素加border可以实现子元素的margin,但是不推荐。希望规范使用给父元素的padding属性)

border的属性三要素:粗细、线性、颜色;不写有默认属性值。

线性:dotted点、 dashed虚、solid实、double双,groove凹、ridge凸、inset内、outset外

6、 position 位置

它主要是用于实现 对元素的定位。

fixed固定定位、relative相对定位、absolute绝对定位 (使用属性一定要配合坐标方向使用,上右下左)

fixed:它是相对于浏览器窗口来进行定位,不管如何滚动,固定定位元素显示位置不变。(固定定位它的特点:脱离标准文档流;层级比标准文档流的层级高,会压在标准文档流元素上方;它不占用空间;他不会随着浏览器滚动而滚动)

relative:相对定位他是相对于‘自己原来的位置’来进行定位。(他没有脱离标准文档流;如果没有设定位置它还在原来位置;设定位置后,相对原来的位置移动,原位置会保留一个坑占位;它会将标准文档的元素压盖住;坐标方向可以是负数;)

absolute:绝对定位元素根据‘祖先元素’来进行定位。它会先查询父元素是否有定位属性,如果有根据父元素定位,如果没有则会想父元素的父级询问查找定位属性,如果祖先元素都没有设置定位属性,它就会相对于浏览器窗口来进行定位。《绝对定位元素使用配合父元素的相对定位元素位置进行定位》(它脱离文档流;不占用空间;它会压盖标准文档流元素)

7、z-index 层级覆盖数值大小决定

只有定位元素才有z-index值,固定定位,相对定位,绝对定位的元素才会拥有z-index;

z-index 没有单位,值是一个整数,默认从0开始;(可以是负数);

8、CSS3新增

结构伪类

E:first-child 匹配第一个孩子

E:last-child 匹配最后一个孩子

E:nth-child(n) 匹配第n个孩子

E:only-child(n) 匹配第n个孩子

E:nth-child(2n) 或者  nth-child(even)匹配偶数 2、4、6

E:nth-child(2n+1) 或者 nth-child(odd)匹配奇数 3、5、7

9、table

table属性(border-collapse 表哥边框)

// 伪元素

:first-letter (操作当前元素的第一个字)

:first-line(操作当前元素的第一行)

::before(在之前插入,在一个盒子内部前面)

::after(再之后插入,在一个盒子内部后面)

// 文本阴影

text-shadow 有四个值(水平阴影、垂直阴影、模糊距离、阴影颜色)可以有对组值,用逗号隔开

h-shadow(水平阴影【必须】可负值;正值阴影在右边,负值在左边 )

v-shadow(垂直阴影 【必须】可负值 ;正值阴影在下边,负值在上边 )

blur(【可选】模糊距离;值越大越模糊)

color(阴影颜色,参考颜色值)

// 盒子阴影

box-shadow (水平方向阴影、垂直方向阴影、模糊距离、阴影尺寸、阴影颜色、内/外阴影)水平阴影和垂直阴影必写,其他可以忽略。

box-shadow: h-shadow v-shadow blur spread color inset

spread(阴影尺寸)inset(可将外部阴影改为内部阴影)

//圆角矩形

border-radius (盒子的四个角)值单位px %

// 透明度 《只要是颜色都可以透明度》

将颜色的值设置rgba()就可以了。a就是透明度;

可以将文本设置透明度;背景颜色设置透明度;边框颜色可以设置透明度

10、H5新特性

1》audio音频(在H5中提供了播放音频文件的标准,controls控制器 属性提供播放、暂停、音量、循环等控件)

[标签]

<audio>(定义声音) <source>规定媒体资源可以是多个。

2》video视频(在H5中提供了展示视频的标准,controls控制器 属性提供播放、暂停、音量、循环等控件)

[标签]

<audio>(定义视频) <source>规定多媒体资源可以是多个。

[属性]

width 和height(视频可以定义宽高)

3》拖放

拖放是一种常见的现象,抓取一个对象后拖到另一个地方。

浏览器支持IE9、Firefox、Chrome、Safari5以上版本。

draggable="true" 设置为可拖动

ondragstart // 开始拖动

setData() // 设置数据

getData() // 数据获取(先设置数据后才能获取到数据)

ondragover

ondrop

4》canvas 画布

承载图形的画布是一个矩形区域,可以控制里面每一个像素;

canvas拥有多种绘制路径、矩形、圆形、字符、以及添加图像的方法。

获取画布的ID,

var cxt = canvasId.getContext('2d');

cxt.fillStyle = '#ff0';

cxt.fillRect(0,0,100,100)

cxt.beginPath()

cxt.arc(80,80,100,90,Math.PI*2,true);

cxt.closePath();

cxt.fill()

cxt.drawImage(url,x坐标,y坐标)

var image = new Image();

image.onload = function(){

    cxt.drawImage(image,0,0)

}

 image.src='url/img.png

5》SVG 矢量图

svg是指可伸缩矢量图形(scalable vector graphics)

新建svg.svg文件,(H5:svg元素参考文档矢量图想用那个形状负值那个代码)

使用iframe引入svg,svg文件

6》H5地理定位

geolocation API用于获取用户的地理定位。

IE9+(含),Firefox、Chrome、Safari浏览器支持(对于拥有GPS设备的定位更精准)

 


 
 

以上图片实例仅参考。

7》WEB存储

H5提供了两种在客户端存储数据的新方法

localStorage, 没有时间限制的数据存储

 


 

sessionStorage, 针对一个session进行数据存储,当用户关闭当前浏览器窗口,数据会被删除

 


 

之前的存储都是由cookie完成的,但是cookie不适合大量数据存储,因为它们由每个对服务器的请求传递,这是的cookie速度慢,效率不高。

《回顾补充《CSS3新书性》》

3新边框属性border-radius border-shadow 

3新背景属性background-size background-origin

3新文本属性text-shadow word-warp

8》2D效果 transform()

translate() // 移动 px %

rotate() // 旋转 度数deg

scale() // 缩放 倍数em 

skew() // 倾斜 度数deg

matrix()

// 3D retate(Z,X,Y)三轴

9》过渡transition

transition: 指定的属性 变化的时间

10》动画 animation

animation: 动画名称 时间;

// Safari 浏览器 加前缀 -webkit-animation

@keyframes 动画名称 {from {阶段代码} to{阶段代码} } (0%~100%)

// 加前缀 @-webkit-keyframes

至少有这两个项动画属性;规定动画的名称 和 规定动画的时长

11》多列布局

column-count // 像报纸一样(数值)分为几列

column-gap //列之间的间距

column-rule // 列之间中间线或分隔线

标签:css3,定位,浏览器,标签,元素,html5,选择器,属性
From: https://www.cnblogs.com/qfy0411/p/13973102.html

相关文章

  • HTML5的应用范围有哪些?
     HTML5的应用范围有哪些?HTML5开发作为前端开发的重要组成部分,一直备受关注。HTML5的应用范围也是越来越广。它可以用来构建跨平台移动应用、开发游戏、建立电子商务网站,甚至在智能家居和物联网领域也找到了一席之地。简直就是无所不能。 HTML5开发的一个重要方向是移动端应用开发......
  • html5 的 webScoket 和 C# 建立Socket连接
    html5的webScoket和C#建立Socket连接最近使用的web项目中,需要服务器直接触发前端显示效果。所以研究了一下websocket:名词解释:WebSocketWebSocket协议是一种双向通信协议,它建立在TCP之上,同http一样通过TCP来传输数据,但是它和http最大的不同有两点:1.WebSocket是一种双向......
  • HTML5教程之移动端Web页面布局
    一、什么是移动端项目顾名思义,运行在移动端的项目就称为移动端项目。那什么是移动端呢,主要是指我们的一些手持设备,最具有代表性的就是我们日常使用的手机和平板,当然还包括一些其他便携设备,如智能手表,掌上游戏机,等流动装置。二、为什么要学移动端布局随着科技的进步......
  • 熟练掌握并充分利用CSS3的新特性,持续更新中。。。
    1.1  尝试新颖的CSS3特性首先,我们来看一个具体的案例。  https://code.juejin.cn/pen/7277536985772720139 1.2  CSS3新特性简介和浏览器支持情况新特性简介:1)强大的CSS3选择器2)抛弃图片的视觉效果3)盒模型变化(多列布局和弹性盒模型)4)阴影效果5)Web字体和webFo......
  • 直播app开发,CSS3动画实现左右无缝滚动图
    直播app开发,CSS3动画实现左右无缝滚动图<viewclass="shortList_con"><viewclass="scrollCon":style="'width:'+(shortRouteList.length)*210+'rpx'"><viewclass="shortItem"v-for="(item,index......
  • web前端入门到实战:HTML5基础-新增标签+新增属性+布局案例
    html5中常用的结构标签article文章header头部nav导航section区域aside侧边栏hgroup区块的相关信息figure定义一组内容及标题figcaption定义figure元素的标题footer底部dialog对话框使用习惯:header/section/footer>aside/articl......
  • CSS3 中 transition 和 animation 的属性分别有哪些
    Transition属性:transition 属性用于定义元素在状态改变时从一个样式转换到另一个样式的过渡效果。它包含以下几个属性:transition-property:指定过渡效果应用的CSS属性名称,多个属性可以用逗号分隔。transition-duration:指定过渡效果的持续时间,单位可以是秒(s)或毫秒(ms)。transit......
  • 必须Mark!最佳HTML5应用开发工具推荐
    摘要:HTML5自诞生以来,作为新一代的Web标准,越来越受开发人员及设计师的欢迎。其强大的兼容性,一次开发,到处使用,大大减少了跨平台开发人员的数量及成本。特别在如今日新月异的移动时代,HTML5的才能更加得以体现。HTML5自诞生以来,作为新一代的Web标准,越来越受开发人员及设计师的欢......
  • 利用html5调用本地摄像头拍照上传图片
    测试只有PC上可以,手机上不行<!DOCTYPEHTML><HTML><HEAD><TITLE>NewDocument</TITLE><METANAME="Generator"CONTENT="EditPlus"><METANAME="Author"CONTENT=""><METANAME="Key......
  • css3属性之 text-overflow:ellipsis
    语法:text-overflow:clip |  ellipsis默认值为clip不显示省略标记clip:当前对象内文本溢出时不显示省略标记,而是将溢出部分裁剪。ellipsis:当对象内文本一处时显示省略标记(...)。一、常见的单行文本溢出显示省略写法:text-overflow:ellipsis;overflow:hidden;white-......