css基础
-
css介绍
- CSS —— Cascading Style Sheets,中文名:层叠样式表
- CSS 作用是修饰 HTML 和 XML 的标记语言
- CSS 属于浏览器解释语言,它可以由浏览器直接执行,不用再进行编译
-
css格式
每条声明由一个属性和一个值组成,每个属性有一个值。
css选择器(id选择器>类选择器>标签选择器)
-
标签选择器——标签名{}
- 一般用来做通用设置
-
<style> p{ color: red; } </style> <div>hello</div> <p>hello</p>
-
类选择器——.类名{}
- 一个元素需要使用多个样式,直接用空格分隔
-
<style> .blue{color:blue} .big{font-size:20px} .box{width:100px;height:100px;background:gold} </style> <div class="blue">这是一个div</div> <h3 class="blue big box">这是一个标题</h3> <p class="blue box">这是一个段落</p>
-
id选择器——#id名{}
- (元素id不能重复,不推荐使用)
-
<style> #box{color:red} </style> <p id="box">这是一个段落标签</p> <p id="box1">这是第二个段落标签</p>
-
层级选择器
- 后代选择器vs子代选择器
-
<style> <!--子代选择器--> div>a{ color: red; } <!--后代选择器--> div a{ color: red; } </style> <body> <div> <a href="">去百度</a> <p> <a href="">去新浪</a> </p> </div> </body>
-
组合选择器
-
<style> .box1,.box2,.box3{width:100px;height:100px} .box1{background:red} .box2{background:pink} .box3{background:gold} </style> <div class="box1">这是第一个div</div> <div class="box2">这是第二个div</div> <div class="box3">这是第三个div</div>
-
伪类选择器
- (当用户和网站交互的时候改变显示效果可以使用伪类选择器 )鼠标放上时有动态效果,改编成伪类选择器的样式
-
<style> .box1{width:100px;height:100px;background:gold;} .box1:hover{width:300px;} </style> <div class="box1">这是一个div</div>
-
通配符选择器(对所有标签起作用)
-
*{ color:green; font-size:20px; }
样式表引入
-
行内样式
-
<body> <!--行内样式--> <p style="color: indianred">hello</p> </body>
-
内联样式
-
<head> <!-- 内联样式--> <style> p{ color: green; } </style> </head>
-
外联样式
- 先新建一个css文件,装入设置的样式,再利用link引入
-
p{color: crimson}
-
<head> <!-- 外联样式--> <link rel="stylesheet" href="text.css"> </head>
优先级:行内样式>内联样式=外联样式
常用样式属性
-
布局样式
-
width 设置元素(标签)的宽度,如:width:100px;
-
height 设置元素(标签)的高度,如:height:200px;
-
background 设置元素背景色或者背景图片,如:background:gold; 设置元素的背景色, background: url(images/logo.png); 设置元素的背景图片。
-
border 设置元素四周的边框,如:border:1px solid black; 设置元素四周边框是1像素宽的黑色实线。以上也可以拆分成四个边的写法,分别设置四个边的:
-
border-top 设置顶边边框,如:border-top:10px solid red;
-
border-left 设置左边边框,如:border-left:10px solid blue;
-
border-right 设置右边边框,如:border-right:10px solid green;
-
border-bottom 设置底边边框,如:border-bottom:10px solid pink;
-
padding 设置元素包含的内容和元素边框的距离,也叫内边距,如padding:20px;padding是同时设置4个边的,也可以像border一样拆分成分别设置四个边:padding-top、padding-left、padding-right、padding-bottom。
-
margin 设置元素和外界的距离,也叫外边距,如margin:20px;margin是同时设置4个边的,也可以像border一样拆分成分别设置四个边:margin-top、margin-left、margin-right、margin-bottom。
-
float 设置元素浮动,浮动可以让块元素排列在一行,浮动分为左浮动:float:left; 右浮动:float:right;
-
文本样式
-
color 设置文字的颜色,如: color:red;
-
font-size 设置文字的大小,如:font-size:12px;
-
font-family 设置文字的字体,如:font-family:'微软雅黑';为了避免中文字不兼容,一般写成:font-family:'Microsoft Yahei';
-
font-weight 设置文字是否加粗,如:font-weight:bold; 设置加粗 font-weight:normal 设置不加粗
-
line-height 设置文字的行高,如:line-height:24px; 表示文字高度加上文字上下的间距是24px,也就是每一行占有的高度是24px
-
text-decoration 设置文字的下划线,如:text-decoration:none; 将文字下划线去掉
-
text-align 设置文字水平对齐方式,如text-align:center 设置文字水平居中
-
text-indent 设置文字首行缩进,如:text-indent:24px; 设置文字首行缩进24px
css显示特性
display属性的使用
-
none 元素隐藏且不占位置
-
inline 元素以行内元素显示
-
block 元素以块元素显示
-
示例:
-
<style> .box{ /* 将块元素转化为行内元素 */ display:inline; } .link01{ /* 将行内元素转化为块元素 */ display:block; background: red; } .con{ width:200px; height:200px; background:gold; /* 将元素隐藏 */ display:none; } </style> <div class="con">我是被隐藏的数据</div> <div class="box">这是第一个div</div> <div class="box">这是第二个div</div> <a href="#" class="link01">这是第一个链接</a> <a href="#" class="link01">这是第二个链接</a>
-
css元素溢出
当子元素(标签)的尺寸超过父元素(标签)的尺寸时,此时需要设置父元素显示溢出的子元素的方式,设置的方法是通过overflow属性来完成。
overflow的设置项:
-
visible 默认值, 显示子标签溢出部分。
-
hidden 隐藏子标签溢出部分。(通常使用)
-
auto 如果子标签溢出,则可以滚动查看其余的内容。
-
示例:
-
<style> .box1{ width: 100px; height: 200px; background: red; /* 在父级上设置子元素溢出的部分如何显示 */ /* overflow: hidden;*/ /* overflow: visible;*/ /*overflow: auto;*/ } .box2{ width: 50px; height: 300px; background: yellow; } </style> <div class="box1"> <div class="box2">hello</div> </div>
-
盒子模型
-
盒子模型就是把HTML页面的元素看作一个矩形盒子,矩形盒子是由内容(content)、内边距(padding)、边框(border)、外边距(margin)四部分组成。
-
盒子模型样式属性
-
盒子的内容宽度(width) **不是盒子的宽度
-
盒子的内容高度(height) **不是盒子的高度
-
盒子的边框(border)
-
盒子内的内容和边框之间的间距(padding)
-
盒子与盒子之间的间距(margin)
-
设置宽高***
-
width:200px; /* 设置盒子的宽度,此宽度是指盒子内容的宽度,不是盒子整体宽度 */ height:200px; /* 设置盒子的高度,此高度是指盒子内容的高度,不是盒子整体高度 */
设置边框(以上边框为例)
-
border-top:10px solid red;
设置内间距
-
padding-top:20px; /* 设置顶部内间距20px */ padding-left:30px; /* 设置左边内间距30px */ padding-right:40px; /* 设置右边内间距40px */ padding-bottom:50px; /* 设置底部内间距50px */
设置外间距
-
margin-top:20px; /* 设置顶部内间距20px */ margin-left:30px; /* 设置左边内间距30px */ margin-right:40px; /* 设置右边内间距40px */ margin-bottom:50px; /* 设置底部内间距50px */
盒子小结
-
盒子模型的5个主要样式属性
- width:内容的宽度(不是盒子的宽度)
- height:内容的高度(不是盒子的高度)
- padding:内边距。
- border:边框。
- margin:外边距
- 盒子的真实尺寸只会受到宽度、高度、边框、内边距四个属性的影响,不会受到外边距属性的影响。