css知识点总结?CSS基础知识点总结
大家好,关于css知识点总结很多朋友都还不太明白,今天小编就来为大家分享关于CSS基础知识点总结的知识,希望对各位有所帮助!
CSS基础知识点全面解析(转载)
基本
常识与实践
链接方式
基本
最基本的方式就是直接在html文件中指定元素样式,这种方式不推荐,因为将表现层和结构层混起来了
"style="background-image:url({{user.avatar}})"
内部链接
要为html直接增加css样式,需要在元素中增加开始和结束style标记,css规则放在里面
<style>
p{
color: gray;
}
</style>
css文件外置
另一种方式将css文件外置,如style.css,作为样式表(stylesheets),然后从html众创建一个到这个文件的外部链接,用元素,用外部样式表的好处是要修改整个网站的样式,只要进入这个样式表,对css进行几处修改即可。如:
<link type="text/css" rel="stylesheet" rel="external nofollow" href="lounge.css">
多样式表
使用多个样式表,顺序很重要,一个样式表会覆盖在它上面链接的样式表中的样式,有时会有一个样式表作为页面的基础样式,要修改样式,链接这个样式表,然后在下面提供自己的样式表,指定要修改的样式,如下所示:
<link rel="stylesheet" rel="external nofollow" href="corperate.css">//总公司样式
<link rel="stylesheet" rel="external nofollow" href="beverage-division.css">//部门对总公司的样式做了一些补充,甚至可以覆盖公司的样式
<link rel="stylesheet" rel="external nofollow" href="lounge-seattle.css">//西雅图休闲室对样式表做了自己的调整
简写
css属性太多,能不能不费吹灰之力就指定这些属性呢?可以把同一属性的值结合起来写成一句,即简写。
简写格式
padding
padding: 0px 40px 30px 20px;,顺序是上右下左,顺时针有木有,如果都相同可以用padding: 20px;
padding-top: 0px;
padding-right: 40px;
padding-bottom:30px;
padding-left: 20px;
margin
上面的padding格式同样对margin也适用,还有另一种方法,如果上下一样,左右一致,可以这样写:margin: 0px 20px,前面指定上下,后面指定左右。
border
边框属性简写 border: thin solid#007e73;,可以用你喜欢的任何顺序。
background
背景简写 background: white url(images/cocktail.gif) repeat-x;,同样顺序随便
字体
字体简写的格式稍微复杂一些:
font: font-style font-variant font-weight font-size/line-height font-family
选择
子孙选择器
父元素和子孙元素名之间有一个空格,子孙选择器会选择所有子孙,包括这个元素中嵌套的所有,不管嵌套多深,例如
color: black;
}
直接孩子
如果要选择直接的孩子,用>
color: black;
}
复杂选择
更复杂的选择,方法还是一样
color: blue;
}
规则添加
类
当我们用选择器选择元素使用一个规则时,会对所有该元素应用这个样式,所以如何单独地选择这些元素呢?这里就需要类class,class可以定义一类元素,对属于该类的所有元素应用样式.要将一个元素加入一个类,只需要增加属性”class”,并提供类名,如”greentea”:
<p class="greentea">
...
</p>
类元素选择器
先选择这个类中的元素,再用”.”指定一个类,最后是类名,如:
p.greentea{
color: green;
}
添加类元素
如果想对所有<blockquote>也做同样的处理,可以:
blockquote.greentea,p.greentea{
color: green;
}
<blockquote class="greentea">
类选择器
如果想把<h1>,<h2>,<h3>,<p>和<blockquote>都增加到greentea呢?要对类中的所有元素都用同一样式可以用:
.greentea{
color: green;
}
/省略所有元素名,只有一个点,则会应用到所有成员/
多类元素
元素可以有多个类,例如:
<p class="greentea raspberry blueberry"
特定元素选择器
如果多个选择器都选择了一个元素呢?例如上面的3个类都与p元素匹配,并且都定义了color属性,那么那个会胜出?
id
id的作用
id属性用来唯一地命名元素,通常你想对多个元素重用某些样式,才能真正发挥类的作用。但是如果只有一个元素需要样式,或者页面上只有一个元素,那就应该使用id,每个元素只能有一个id,页面中只能有一个元素拥有特定id,一个元素有一个id,同时可以属于一个或多个类,id中不允许出现空格或其他特殊字符,如
<p id="footer">...</p>
选择元素
用id选择一个元素,需要在id前面使用一个#字符(类是[.]),id选择器只与页面中的一个元素匹配
color: red;
}//选择id为footer的任意元素
p#footer{
color: red;
}//选择id为footer的<p>元素
实践建议
继承
样式继承
层叠
媒体查询
link媒体查询
你可能想针对将要显示页面的设备调整页面的样式,可以用media属性,在link元素中增加这个属性.如
<link rel="stylesheet" rel="external nofollow" href="lounge-mobile.css" mdeia="screen and(max-device-width: 480px)">
<link rel="stylesheet" rel="external nofollow" href="lounge-print.css" media="print">
css媒体查询
可以直接在css中增加媒体查询,使用@media规则,把对所有媒体类型都通用的规则放在@media规则下面,例如
@media screen and(min-device-width: 481px){//当设备屏幕宽度大于480px时使用
margin-right: 250px;
}
}
@media screen and(max-device-width: 480px){//当设备屏幕小于等于480px时使用
margin-right: 30px;
}
}
@media print{//如果要打印页面,使用该规则
body{
font-family: Times,"Times New Roman", serif;
}
}
实践建议
属性
盒模型
盒模型是css看待元素的一种方式,css将每个元素看作由一个盒子表示,每个盒子由一个内容区以及可选的内边距,边框和外边距组成。由内而外分别是:
border边框
color颜色
文本元素的字体颜色
body{
background-color: rgb(80%, 40%, 0%)//橙色
}
还可以指定0-255之间的一个数值,例如:
body{
background-color: rgb(204, 102, 0)//和上面颜色一致,255*80%= 204...
}
font-family字体
大多数计算机上通常只安装了部分字体,所以选择字体时要当心,通常指定的font-family包含一个候选字体列表,他们都来自同一个字体系列,候选字体用逗号分隔,大小写字母必须一致,最后总是放一个通用的字体系列名,如果一个字体名中包含多个单词,比如Courier New,如何指定?用引号,”Courier New”,如:
body{
font-family: Verdana, Geneva, Arial, sans-serif;<一一首选字体呈降序
}
字体系列
每个font-family包含一组有共同特征的字体。共有5个字体系列:
body{ font-size: small;}
h1{ font-size: 150%;}
h2{ font-size: 120%;}
注意老版IE不支持用像素指定的文本缩放
浏览器默认字体大小
其他属性
left指定一个元素的左边所在位置
top控制一个元素顶部的位置
background-image在元素后面放置一个图像,如
background-image: url(images/background.gif);
//用url括起来,注意没有引号
background-repeat背景图像是否重复
line-height: 1;//代表elixirs中的所有元素的行间距为其自己字体大小的1倍
}
width: 200px;
float: right;
}
background-color:#675c47;
color:#efe5d0;
text-align: center;
padding: 15px;
margin: 10px;
font-size: 90%;
clear: right;
}
width: 800px;
padding-top: 5px;
padding-bottom: 5px;
background-color:#675c47;
}
那么页面的宽度将被限制为800px,无论浏览器宽度如何变化都不会移动,但这会导致浏览器很宽时,右边有很多空白空间
凝胶布局 Jello
width: 800px;
padding-top: 5px;
padding-bottom: 5px;
background-color:#675c47;
margin-left: auto;
margin-right: auto;
}
绝对定位
position: absolute;
top: 100px;
right: 200px;
width: 280px;
}
display: table;
border-spacing: 10px;//于是不再需要div中的外边距
}
display: table-row;
}
display: table-cell;
background:#efe5d0 url(images/background.gif) top left;
font-size: 105%;
padding: 15px;
/ margin: 0px 10px 10px 10px;/
vertical-align: top;//确保表格两个单元格中的所有内容相对于单元格上边对齐,默认为中间对齐,可以设置为top,middle,bottom
}
display: table-cell;
background:#efe5d0 url(images/background.gif) bottom right;
font-size: 105%;
padding: 15px;
/ margin: 0px 10px 10px 10px;/
vertical-align: top;
}
html和css学习总结
本周我大概用了六天的时间完成了html和css的复习、制作考核网页以及完成了学长布置的五个学习小任务,总的来说,虽然完成了这一周的学习,但是对于一些知识点掌握的不是很牢固,使用不太熟练,之后还需要多加练习,对于本周的学习我有如下总结:
对于写网页需要的基础知识一定要牢牢掌握,比如,每个网页都需要的导航栏,一定要熟练掌握;下拉菜单最常用的是 ul和 li标签,也就是列表元素;对于一些标签,一定要知道是块级元素还是行内元素,要掌握他们之间的转换方法,这个也是非常常用的。对于css的盒子模型,一定要认真地学习,并且能熟练的运用。
是一种当页面需要适应不同的屏幕大小以及设备类型时确保元素拥有恰当的行为的布局方式。引入弹性盒布局模型的目的是提供一种更加有效的方式来对一个容器中的子元素进行排列、对齐和分配空白空间。
弹性容器通过设置 display属性的值为 flex或 inline-flex将其定义为弹性容器。
弹性容器内包含了一个或多个弹性子元素。
注意:弹性容器外及弹性子元素内是正常渲染的。弹性盒子只定义了弹性子元素如何在弹性容器内布局。
弹性子元素通常在弹性盒子内一行显示。默认情况每个容器只有一行。
当为父盒子设为flex布局,子元素的float、clear和vertical—align属性将失效
flex布局原理:通过给父盒子添加flex属性,来控制子盒子的位置好排列方式
flex布局父项常见的属性:
1.flex-diretion:设置主轴的方向
默认的主轴方向是x轴方向,水平方向;默认的侧轴方向是y轴方向,水平向下
属性值:row默认值从左到右
row-reverse从右到左
column从上到下
column从下到上
2.jusity-content:设置主轴上的子元素排列方式
属性值: flex-start默认值从头开始如果主轴是x轴,则从左到右
flex-end从尾部开始排列
center在主轴居中对齐(如果主轴是x轴则水平居中)
space-around平分剩余空间
space-between先两边贴边再平分剩余空间(重要)
3.flex-wrap:设置子元素是否换行
属性值: nowrap默认子元素不换行如果装不下,会缩小子元素的宽度,一块放到父元素中
wrap换行
4.align-content:设置侧轴的子元素排列方式(多行需要换行)单行无效
属性值: flex-start默认值在侧轴的头部开始排列
flex-end在侧轴的尾部开始排列
center在侧轴中间显示
space-around子轴在侧轴平分剩余空间
space-between轴在侧轴先分布在两头,再平分剩余空间
stretch设置子项元素高度平分父元素高度
5.align-items:设置侧轴的子元素排列方式(单行)
属性值: flex-start从上到下
flex-end从下到上
center挤在一起(垂直居中)
stretch拉伸(默认值)使用时子盒子不要给高度
例如:子元素居中默认主轴是x轴
主轴居中 jusity-content:center
侧轴居中 align-items:center
6.flex-flow:复合属性,相当于同时设置了flex-diretion和flex-wrap
flex布局子项常见属性
1.flex定义子项目分配剩余空间,用flex来表示占多少份数
flex:<number>;默认值 0
2.align-self控制子项自己在侧轴的排列方式
3.order属性定义子项的排列顺序(前后顺序)
给父元素添加 display:grid
display关于网格的取值分为两个,grid(块网格)和 inline-grid(行内网格行内块)
grid容器从上向下排列
inline-grid容器从左向右排列
grid-template-row;规定行属性
grid-template-column;规定列属性
1.绝对大小(根据列数或者行数确定值得个数)
grid-template-row:200px 200px 200px
grid-template-column:200px 200px 200px
2.百分比(根据列数或者行数确定值得个数)
grid-template-row:33.33% 33.33% 33.33%
grid-template-column:33.33% 33.33% 33.33%
3.repeat函数
grid-template-rows: repeat(3,33.3%);
grid-template-columns: repeat(3,33.3%);
4.repead auto-fill自动填充
grid-template-rows: repeat(auto-fill,33.3%);
grid-template-columns: repeat(auto-fill,33.3%);
5.fr片段
grid-template-rows: 100px 1fr 300px;
grid-template-columns: 100px 1fr 300px
6.minmax
grid-template-rows:minmax(100px,200px) 200px 300px
grid-template-columns:200px 200px 200px
7.auto
grid-template-rows: 100px auto 300px;
grid-template-columns: 100px auto 300px
列间距
1.grid-row-gap: 10px;
grid-column-gap: 10px;
复合写法
grid-gap: 10px 10px;
指定区域
1.grid-template-areas:'a b c'
'd e f'
'g h i';
区域合并时需要让合并的区域名字相同
grid-template-areas:'a a c'
'd e f'
'g h i';
.box div:nth-child(1){
grid-area: a;
}
以上两种网页布局方式是我制作网页时比较常用的,也是学习前端必须掌握的。
除了以上这些,还有很多是我们需要掌握的,加油吧继续学习!!!!!!下周分享js学习总结
前端需要哪些知识
当然不能只会html、css和js了。
怕你找不到工作的。我搜的还是html,都需要会框架啊。所以啊,一定要多学点东西。
第一阶段HTML+CSS核心基础
HTML,CSS核心基础;CSS过渡;HTML5语义化标签;线性渐变,径向渐变;HTML新增标签属性;CSS动画Animation;表单项新增属性;弹性盒模型;CSS选择器;经典布局练习(双飞翼,CSS3伪类品字布局)+案例;CSS伪元素;响应式布局
第二阶段JavaScript
JavaScript基础;JavaScript操作DOM;JavaScript面向对象(js高级)
第三阶段PC端整栈开发:
PC项目;jQuery;jQuery项目;less;bootStrap
第四阶段ES6+Node+工程化:
ES6/7/8;promise;npm常用命令;git基础(常用操作);git高级;Node.js基础;git基础(常用操作);http协议& cookie& session;MongoDB;Express框架;ajax(原生,jQuery,axios,fetch);ajax库基本封装使用 promise封装;模块化;构建工具gulp,webpack4.0基础
第五阶段React技术栈:
React基础语法;react-router;React Antd使用;Redux;React移动端项目
第六阶段Vue技术栈:
Vue基础;VueRouter;Vuex;Vue源码(v-model,双向数据绑定);VuePC项目-电商;Vue后台管理
第七阶段小程序:
小程序;UniApp;TypeScript
第八阶段就业指导+面试精讲:
vue实战(移动端);小程序实战;面试精讲;就业指导
关于css知识点总结,CSS基础知识点总结的介绍到此结束,希望对大家有所帮助。