如何自己做收费的视频网站,企业手机网页设计,那里做直播网站,怎么制作自己的免费网站文章目录 引入标签的两大重要属性#xff1a;区分标签class属性id属性学习CSS流程 CSS前言CSS层叠样式表1.CSS组成2.css语法结构3.注释语法4.引入css的多种方式 CSS选择器1.CSS基本选择器2.CSS组成选择器3.分组与嵌套4.属性选择器5.伪类选择器6.伪元素选择器 选择器优先级CSS继… 文章目录 引入标签的两大重要属性区分标签class属性id属性学习CSS流程 CSS前言CSS层叠样式表1.CSS组成2.css语法结构3.注释语法4.引入css的多种方式 CSS选择器1.CSS基本选择器2.CSS组成选择器3.分组与嵌套4.属性选择器5.伪类选择器6.伪元素选择器 选择器优先级CSS继承选择器的优先级 CSS样式调节1.字体相关2.文本样色3.文本属性4.背景属性 边框1.边框宽度2.边框样式边框圆角 display属性盒子模型浮动float1.定义2.浮点的作用3.关于浮动的特点4.float样式5.浮动现象6.浮动带来的影响7.clear属性规定了元素的哪一侧不允许其他浮动元素8.清除浮动有三种方式 溢出overflow定位opsition1.static2.relative(相对定位)3.absolute(绝对定位)fixed固定是否脱离文档流 z-indexopacity 综合案例 引入
页面都是由HTML构成的并且页面上有很多相同的HTML标签但是相同的HTML标签在不同的位置可能有不同的样式 我们如何区分标签引入标签的两大重要属性
标签的两大重要属性区分标签
class属性
两个元素或者两个以上元素定义相同的样式:批量查找
id属性
id属性被赋予了标识页面元素的唯一身份:点对点精准查找
div classc1 c2 c3 /div
p class c1 c5 /p
span class c1 c8/span
div did1 /div
a href idd2/a注意 1.一个html网页id是不能重复的
2.一个标签可以同时定义多个class。
学习CSS流程
1.先学习如何查找标签
2.再学习如何调整样式
CSS前言
层叠样式表(英文全称Cascading Style Sheets)是一种用来表现HTML标准通用标记语言的一个应用或XML标准通用标记语言的一个子集等文件样式的计算机语言。CSS不仅可以静态地修饰网页还可以配合各种脚本语言动态地对网页各元素进行格式化。 CSS 能够对网页中元素位置的排版进行像素级精确控制支持几乎所有的字体字号样式拥有对网页对象和模型样式编辑的能力。
简单理解CSS如何显示HTML元素。当浏览器读到一个样式表它就会按照这个样式表来对文档进行格式化渲染。如何区分CSS版本如CSS3就是css语言数字3是该语言的版本号
CSS层叠样式表
主要用来调整html标签的各种样式
1.CSS组成
每个CSS样式由两个组成部分选择器和声明。声明又包括属性和属性值。每个声明之后用分号结束 2.css语法结构
选择器{样式名1样式值1;样式名2样式值2;
}3.注释语法
/*注释内容*/4.引入css的多种方式
1.head内style标签内部编写学习的时候使用
2.head内link标签引入标准的方式
3.标签内部通过style属性直接编写不推荐1.内部样式 嵌入式是将css样式集中写在网页里的标签对的标签中
headmeta charsetUTF-8titleTitle/titlestyleh1 {color: orange;}/style2.外部样式 外部样式就是将css写在一个单独的文件中然后在页面进行引入即可 link relstylesheet hrefmycss.css3.行内样式 行内式是在标记的style属性中设定CSS样式 h3 stylebackground: burlywoodstyle属性内直接编写CSS的第三种方法/h3 CSS选择器
1.CSS基本选择器
1、标签选择器(直接按照标签名查找标签)div {color: orange;font-size: 30px;}
2、类选择器(按照标签的class值查找标签).c1 {color: lightskyblue;font-size: 30px;}3、id选择器(根据标签的id之精准查找标签)#d2 {color: darkolivegreen;font-size: 35px;}
4、通用选择器(直接选择页面所有的标签)* {color: cornflowerblue;font-size: 35px;}2.CSS组成选择器
针对标签的上下层级以及嵌套有另一种说法父标签 后代标签 子标签 弟弟标签 哥哥标签 祖先标签
bodydivdivpdivpspandivpspan/span/ppdivp/pspandivspan/span/divspan与div同级span1/spanp与div同级p/pspan与div同级span2/span
/body1.后代选择器
div span {color: orange;font-size: 35px;
} 2.儿子选择器
divspan {color:burlywood;font-size: 35px;
}3.毗邻选择器
divspan {color:burlywood;font-size: 35px;
}4.弟弟选择器
div~span {color:burlywood;font-size: 35px;
}3.分组与嵌套
1.多个选择器合并查找div,p,span{color: rebeccapurple;font-size: 40px;}
2.查找满足条件的选择器#d1,.c1,span{color: orange;font-size: 40px;}
3.查找class含有c1的divdiv.c1 {color: orange;font-size: 40px;}
4.查找id是d1的divdiv#d1 {color: orange;font-size: 40px;}
5.查找含有c1样式值里面的含有c2样式值的p标签.c1 p.c2 {color: orange;font-size: 40px;}body内容
bodydiv idd1 classc1I am div(d1)/divdiv idd2 classc2I am div(d2)/divdiv idd3 classc1 c3I am div(d3)/divp classc1I am p/pspanI am span/span
body4.属性选择器
1.按照属性名查找[username] {color:red;font-size: 40px;}
2.按照属性名等于属性值[usernamekimi] {color:red;font-size: 40px;}
3.按标签里面的属性名属性值查找的div[usernamekimi] {color: #ff7d2a;font-size: 40px;}5.伪类选择器
# a标签补充说明未点击过的网址默认是蓝色点击过的则为紫色1.鼠标移动到链接上显示orangea:hover {color: orange;}2.补充2.1 未访问的链接显示下列样式a:link {color: red;}2.2 选定的链接不动采用下列样式a:active {color: lightskyblue;}2.3 已访问的链接采用下面样式a:visited {color: darkgray;}2.4 input镖 点输入框时获取焦点时样式input:focus {background-color: #ff7d2a;}
6.伪元素选择器
1.首字母大写且渲染成红色p:first-letter {font-size: 45px;color: red;}
2.css在开头添加文本无法正常选中p:before {content: 嘿嘿嘿;color: orange;}
3.css在末尾添加文本无法正常选中p:after {content: 我是删不掉的;color: aquamarine;}选择器优先级
CSS继承
继承是CSS的一个主要特征它是依赖于祖先-后代的关系的。继承是一种机制它允许样式不仅可以应用于某个特定的元素还可以应用于它的后代。继承是CSS重要的一部分我们甚至不用去考虑它为什么能够这样但CSS继承也是有限制的。有一些属性不能被继承如border, margin, padding, background等。
选择器的优先级
1.选择器相同 导入方式不同 就近原则
2.选择器不同 导入方式相同其实是按照不同选择器的权重来决定的 内联样式 id选择器 类选择器 标签选择器
CSS样式调节
1.字体相关
1.高度和宽度
只有块儿级标签可以设置 行内标签无法设置
style
p {height: 1000px; /*高度*/width: 50px; /*宽度*/
}
/style2.字体大小
font-family可以把多个字体名称作为一个“回退”系统来保存。如果浏览器不支持第一个字体则会尝试下一个。浏览器会使用它可识别的第一个值
pythonbody {font-family: Microsoft Yahei, 微软雅黑, Arial, sans-serif
}font-size: 99px; # 字体大小一般有固定的大小参考(字体代码)3.字体粗细
font-weight用来设置字体的字重粗细。
font-weight: bolder; /*字体粗*/
font-weight: lighter; /*字体细*/值描述normal默认值标准值bold粗体bolder加粗lighter更细100~900设置具体粗细400等同于normal而700等同于boldinherit继承父元素字体的粗细值
2.文本样色
颜色属性被用来设置文字的颜色。颜色是通过CSS最经常的指定设置颜色方式如下
1.十六进制值 - 如: FF0000颜色编码
2.一个RGB值 - 如: RGB(255,0,0)
3.颜色的名称 - 如: red
4.还有rgba(255,0,0,0.3)第四个值为alpha透明度, 指定了色彩的透明度/不透明度它的范围为0.0到1.0之间。3.文本属性
文本对齐 text-align属性规定元素中的文本的水平对齐方式
值描述left左边对齐 默认值right右对齐center居中对齐justify两端对齐
文本装饰 text-decoration 属性用来给文字添加特殊效果。
值描述none默认定义标准的文本underline定义文本下的一条线overline定义文本上的一条线line_through定义穿过文本下的一条先inherit继承父元素的text_decoration属性的值
去掉a标签的默认下划线
a {text-decoration: none;
}首行缩进
p {text-indent: 32px;
}4.背景属性
*背景颜色*/
background-color: red;
/*背景图片*/
background-image: url(1.jpg);
/*背景重复repeat(默认):背景图片平铺排满整个网页repeat-x背景图片只在水平方向上平铺repeat-y背景图片只在垂直方向上平铺no-repeat背景图片不平铺
*/
background-repeat: no-repeat; # 不重复
/*背景位置*/
background-position: left top;
/*background-position: 200px 200px;*/
当多个属性名有相同的前缀 那么可以简写一次性完成div {width: 800px; /*div标签设置宽高*/height: 800px;background-color: red;background-image: url(https://img2.baidu.com/it/u167083063,1652780278fm253fmtautoapp138fJPEG?w369h472); /*可以索引到图片网页地址*//*background-image: url(666.png); 也可以是本地地址*/background-repeat: no-repeat; /*不重复*//*background-repeat: repeat-x; 只有横向重复*//*background-repeat: repeat-y; 只有纵向重复*/background-position: center center; /*调整图片居中到div标签中*//*background: url(666.png) blue no-repeat center center; 所有属性都可以用这一句完成*/
}1.多个属性名前缀相同那么可以简写
background:orange url(url) no-repeat center center;
一个个编写即可 不写就默认2.如何实时修改图片位置
边框
边框有三个属性分别是边框宽度、边框颜色和边框样式
1.边框宽度
属性描述border-width边框的宽度border-style边框的样式border-color边框的颜色
规范写法
border-left-width: 10px;
border-left-style: dashed;
border-left-color: orange;简写
border-left: 10px inset blueviolet;2.边框样式
边框的风格样式
值描述none无边框dotted点状边框dashed虚线边框solid实线边框inset边框内嵌入一个立体边框outset边框外嵌入一个立体边框hidden隐藏边框doble双实线groove边框带有立体感的沟槽ridge 边框圆角
border-radius:这个属性可以实现圆角边框的效果。
border-radius:50%display属性
用于控制HTML元素的显示效果
注意行内标签是无法设置长宽 只有块儿级可以设置
值意义display:“none”HTML文档中元素存在但是在浏览器中不显示。一般用于配合JavaScript代码使用。display:“block”默认占满整个页面宽度如果设置了指定宽度则会用margin填充剩下的部分。display:“inline”按行内元素显示此时再设置元素的width、height、margin-top、margin-bottom和float属性都不会有什么影响。display:“inline-block”使元素同时具有行内元素和块级元素的特点。
1.display:none 可以隐藏某个元素且隐藏的元素不会占用任何空间。也就是说该元素不但被隐藏了而且该元素原本占用的空间也会从页面布局中消失。
2.visibility: hidden 可以隐藏某个元素但隐藏的元素仍需占用与未隐藏之前一样的空间。也就是说该元素虽然被隐藏了但仍然会影响布局。
行内标签不能设置长宽的只有块级标签可以
快捷键编写ulli*3a.c1{添加文本}emment下列是关于display的隐藏、块级变行内、行内变块级 盒子模型
margin: 用于控制元素与元素之间的距离margin的最基本用途就是控制元素周围空间的间隔从视觉角度上达到相互隔开的目的。
padding: 用于控制内容与边框之间的距离
Border(边框): 围绕在内边距和内容外的边框。
Content(内容): 盒子的内容显示文本和图像。 以快递盒举例
1.快递包里面的实际物体 content(内容)
2.物体与内部盒子墙的距离 padding(内边距、内填充)
3.快递盒的厚度 border(边框)
4.快递盒之间的距离 margin(外边距)1.padding 内边距
padding 内部数据与边框的距离
padding: 20px; 上下左右都一致
padding: 20px 40px; 上下 左右
padding: 10px 20px 30px;上 左右 下
padding: 10px 20px 30px 40px;上 右 下 左2.margin 外边距
margin 标签与标签之间的距离
margin:0px; # 上下左右都一致
margin:10px 10px; # 第一个控制上下 第二个控制左右
margin:20px 10px 20px; # 上 左右 下
margin:10px 2px 3px 5px; # 上 右 下 左针对标签的嵌套 水平方向可以居中
margin: 0 auto;注意如果是套着可以用margin也可以用padding标签与标签之间可以用margin去调水平方向 。margin: 0 auto ;
浮动float
1.定义
在 CSS 中任何元素都可以浮动,浮动就是用来做页面布局的。浮动元素会生成一个块级框而不论它本身是何种元素。
2.浮点的作用
只要是设计到页面的布局一般都是用浮动来提升规划好
3.关于浮动的特点
浮动的框可以向左或向右移动直到它的外边缘碰到包含框或另一个浮动框的边框为止。
由于浮动框不在文档的普通流中所以文档的普通流中的块框表现得就像浮动框不存在一样。
4.float样式
float:left;三种取值
值描述left向左浮动right向右浮动none默认值不浮动
5.浮动现象
!DOCTYPE html
html langen
headmeta charsetUTF-8titleTitle/titlestyle.c1 {border: 5px solid black;}.c2 {height: 50px;width: 60px;background-color: orange; /*背景颜色*/float: right; /*往右移动*/}.c3 {height: 80px;width: 40px;background-color: chocolate;float: left; /*往左浮动*/}/*解决塌陷方法一*/.c4 {clear: left;border: 2px solid darkgray;}/*解决塌陷方法二*/.clearfix:after{content: ; /*空的内容独占一行*/display: block; /*左右两侧都不能有浮动*/clear: both;}.c4 {background-color: blueviolet;height: 100px;width: 80px;float: left;}/style
/head
bodydiv classc1 clearfix div classc2/divdiv classc3/divdiv classc4你真可爱/div/div/body
/html6.浮动带来的影响
浮动的元素是脱离正常文档流的会造成父标签塌陷.
如何解决浮动的影响 引入了clear属性
7.clear属性规定了元素的哪一侧不允许其他浮动元素
值描述left在左侧不允许浮动元素right在右侧不允许浮动元素both在左右两侧不允许浮动元素none默认值允许浮动元素出现在两侧inherit规定应该从父元素继承clear属性的值
注意clear属性只会对自身起作用而不会影响其他元素。
8.清除浮动有三种方式
1.固定高度 自己加一个div设置高度
#d4 {/*高度*/height: 100px;
}自己设置的高度要比上面悬浮的高度要大2.伪元素清除法
.clearfix:after {/*空的内容独占一行*/content: ;display: block;/*左右两侧都不能有浮动*/clear: both;
}
之后只要标签出现了塌陷的问题就给该塌陷的div标签加一个class“clearfix”属性即可3.overflow:hidden 利用clear属性
.c4 {
clear: left; # 左侧(地面 天空)不允许出现浮动的元素
border: 2px solid darkgray;
}溢出overflow
overflow溢出属性
值描述visible默认值。内容不会被修剪会呈现在元素框之外。hidden内容会被修剪并且其余内容是不可见的。scroll内容会被修剪但是浏览器会显示滚动条以便查看其余的内容。auto如果内容被修剪则浏览器会显示滚动条以便查看其余的内容。inherit规定应该从父元素继承 overflow 属性的值。
overflow水平和垂直均设置 overflow-x设置水平方向 overflow-y设置垂直方向
圆形头像示例
!DOCTYPE HTML
html
headmeta charsetUTF-8meta http-equivx-ua-compatible contentIEedgemeta nameviewport contentwidthdevice-width, initial-scale1title圆形的头像示例/titlestyle* {margin: 0;padding: 0;background-color: #eeeeee;}.header-img {width: 150px;height: 150px;border: 3px solid white;border-radius: 50%;overflow: hidden;}.header-imgimg {width: 100%;}/style
/head
bodydiv classheader-imgimg srchttps://pic.cnblogs.com/avatar/1342004/20180304191536.png alt
/div/body
/html定位opsition
1.static
static 默认值无定位不能当作绝对定位的参照物并且设置标签对象的left、top等值是不起作用的的。
2.relative(相对定位)
相对定位是相对于该元素在文档流中的原始位置即以自己原始位置为参照物。有趣的是即使设定了元素的相对定位以及偏移值元素还占有着原来的位置即占据文档流空间。对象遵循正常文档流但将依据toprightbottomleft等属性在正常文档流中偏移位置。而其层叠通过z-index属性定义。
注意positionrelative的一个主要用法方便绝对定位元素找到参照物。
3.absolute(绝对定位)
定义设置为绝对定位的元素框从文档流完全删除并相对于最近的已定位祖先元素定位如果元素没有已定位的祖先元素那么它的位置相对于最初的包含块即body元素。元素原先在正常文档流中所占的空间会关闭就好像该元素原来不存在一样。元素定位后生成一个块级框而不论原来它在正常流中生成何种类型的框。
定义设置为绝对定位的元素框从文档流完全删除并相对于最近的已定位祖先元素定位如果元素没有已定位的祖先元素那么它的位置相对于最初的包含块即body元素。元素原先在正常文档流中所占的空间会关闭就好像该元素原来不存在一样。元素定位后生成一个块级框而不论原来它在正常流中生成何种类型的框。
另外对象脱离正常文档流使用toprightbottomleft等属性进行绝对定位。而其层叠通过z-index属性定义。
!DOCTYPE html
html langen
headmeta charsetUTF-8title绝对定位/titlestyle.c1 {height: 100px;width: 100px;background-color: red;float: left;}.c2 {height: 50px;width: 50px;background-color: #ff6700;float: right;margin-right: 400px;position: relative;}.c3 {height: 200px;width: 200px;background-color: green;position: absolute;top: 50px;}/style
/head
body
div classc1/div
div classc2div classc3/div
/div/body
/htmlfixed固定
fixed对象脱离正常文档流使用toprightbottomleft等属性以窗口为参考点进行定位当出现滚动条时对象不会随着滚动。而其层叠通过z-index属性 定义。 注意点 一个元素若设置了 position:absolute | fixed; 则该元素就不能设置float。这 是一个常识性的知识点因为这是两个不同的流一个是浮动流另一个是“定位流”。但是 relative 却可以。因为它原本所占的空间仍然占据文档流。
在理论上被设置为fixed的元素会被定位于浏览器窗口的一个指定坐标不论窗口是否滚动它都会固定在这个位置。 示例代码
!DOCTYPE html
html langen
headmeta charsetUTF-8meta http-equivx-ua-compatible contentIEedgemeta nameviewport contentwidthdevice-width, initial-scale1title返回顶部示例/titlestyle* {margin: 0;}.d1 {height: 1000px;background-color: #eeee;}.scrollTop {background-color: darkgrey;padding: 10px;text-align: center;position: fixed;right: 10px;bottom: 20px;}/style
/head
body
div classd1111/div
div classscrollTop返回顶部/div
/body
/html是否脱离文档流
相对定位
!DOCTYPE html
html langen
headmeta charsetUTF-8titleTitle/titlemeta nameviewport contentwidthdevice-width, initial-scale1style.c1 {height: 50px;width: 100px;background-color: dodgerblue;}.c2 {height: 100px;width: 50px;background-color: orange;position: relative;left: 100px;}/style
/head
body
div classc1/div
div classc2/div
div styleheight: 100px;width: 200px;background-color: black/div
/body
/html绝对定位
!DOCTYPE html
html langen
headmeta charsetUTF-8titleTitle/titlemeta nameviewport contentwidthdevice-width, initial-scale1style.c1 {height: 50px;width: 100px;background-color: red;position: relative;}.c2 {height: 50px;width: 200px;background-color: green;position: absolute;left: 50px;}/style
/head
body
div classc1购物车div classc2空空如也~/divdiv styleheight: 50px;width: 100px;background-color: deeppink/div
/div/body
/html绝对定位
!DOCTYPE html
html langen
headmeta charsetUTF-8titleTitle/titlemeta nameviewport contentwidthdevice-width, initial-scale1
/head
body
div classc1 styleheight: 50px;width: 500px;background-color: black/div
div classc2 styleheight: 50px;width: 100px;background-color: deeppink;position: fixed;right: 10px;bottom: 20px/div
div classc3 styleheight: 10px;width: 100px;background-color: green/div/body
/html上述例子可知
脱离文档流 绝对定位 固定定位 不脱离文档流 相对定位
z-index
#i2 {z-index: 999;
}设置对象的层叠顺序。
z-index 值表示谁压着谁数值大的压盖住数值小的只有定位了的元素才能有z-index,也就是说不管相对定位绝对定位固定定位都可以使用z-index而浮动元素不能使用z-indexz-index值没有单位就是一个正整数默认的z-index值为0如果大家都没有z-index值或者z-index值一样那么谁写在HTML后面谁在上面压着别人定位了元素永远压住没有定位的元素。从父现象父亲怂了儿子再牛逼也没用
!DOCTYPE html
html langen
headmeta charsetUTF-8meta http-equivx-ua-compatible contentIEedgemeta nameviewport contentwidthdevice-width, initial-scale1title自定义模态框/titlestyle.cover {background-color: rgba(0,0,0,0.65);position: fixed;top: 0;right: 0;bottom: 0;left: 0;z-index: 998;}.modal {background-color: white;position: fixed;width: 600px;height: 400px;left: 50%;top: 50%;margin: -200px 0 0 -300px;z-index: 1000;}/style
/head
bodydiv classcover/div
div classmodal/div
/body
/htmlopacity
用来定义透明效果。取值范围是0~10是完全透明1是完全不透明。
综合案例
导航栏菜单
!DOCTYPE HTML
html
headmeta charsetUTF-8meta http-equivx-ua-compatible contentIEedgemeta nameviewport contentwidthdevice-width, initial-scale1titleli标签的float示例/titlestyle/*清除浏览器默认外边距和内填充*/* {margin: 0;padding: 0;}a {text-decoration: none; /*去除a标签默认的下划线*/}.nav {background-color: black;height: 40px;width: 100%;position: fixed;top: 0;}ul {list-style-type: none; /*删除列表默认的圆点样式*/margin: 0; /*删除列表默认的外边距*/padding: 0; /*删除列表默认的内填充*/}/*li元素向左浮动*/li {float: left;}li a {display: block; /*让链接显示为块级标签*/padding: 0 15px; /*设置左右各15像素的填充*/color: #b0b0b0; /*设置字体颜色*/line-height: 40px; /*设置行高*/}/*鼠标移上去颜色变白*/li a:hover {color: #fff;}/*清除浮动 解决父级塌陷问题*/.clearfix:after {content: ;display: block;clear: both;}/style
/head
body
!-- 顶部导航栏 开始 --
div classnavul classclearfixlia href玉米商城/a/lilia hrefMIUI/a/lilia hrefioT/a/lilia href云服务/a/lilia href水滴/a/lilia href金融/a/lilia href优品/a/li/ul
/div
!-- 顶部导航栏 结束 --
/body
/html