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" href="lounge.css"
多样式表
使用多个样式表,顺序很重要,一个样式表会覆盖在它上面链接的样式表中的样式,有时会有一个样式表作为页面的基础样式,要修改样式,链接这个样式表,然后在下面提供自己的样式表,指定要修改的样式,如下所示:
link rel="stylesheet" href="corperate.css"//总公司样式
link rel="stylesheet" href="beverage-division.css"//部门对总公司的样式做了一些补充,甚至可以覆盖公司的样式
link rel="stylesheet" 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" href="lounge-mobile.css" mdeia="screen and (max-device-width: 480px)"
link rel="stylesheet" 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;
}
CSS布局基础(五)--选择器
一、简单的选择器
1)标签选择器
与网页元素同名,用的最多,也简单,即直接作用于与该选择器名字相同的标签
2) 类选择器
能够为网页对象定义不同的样式类,实现不同元素拥有相同的样式,相同元素的不同对象拥有不同样式
3)类选择器和标签结合在一起==指定类选择器
指定该类用于特定的标签范围内
4)ID选择器(ID唯一)
这个就不举例讲解了,类比类选择器,把"."换成"# "即可
5)通配选择器
如果所有元素都需要定义相同的样式,推荐使用通配选择器
二、复合选择器
1)子选择器
2)相邻选择器(二者有相同父元素)
**利用相邻的兄弟元素来控制,即相邻选择器就是指定一个元素相邻的下一个元素的样式。相邻的选择器使用+表示
3)包含选择器(后代选择器)
第一对象一定要内包含第二对象
4)选择器嵌套
5)属性选择器
属性选择器就是利用网页标签包含的属性及其属性值来定义特定对象或一定范围元素的样式。
1.匹配属性名选择器
2.扩展
3.匹配属性值选择器
4.模糊匹配属性值选择器
类似正则表达式
6)伪选择器和伪元素选择器
标签之间可以通过逗号隔开来设定多个标签的CSS样式
css的基本语法
css的基本语法
cascading stylesheet(级联样式表)。为网页提供外观(也就是,网页的表现形式)。将网页的外观写在一个css文件里,方便页面代码的维护(将表现与数据分离)。为方便大家学习css,我为大家分享css的基本语法如下:
css的基本语法
选择器{
属性1:属性值1;
属性n:属性值n;
符合选择器要求的标记,会添加对应的样式。
Chrome浏览器为SVG和CSS添加GPU加速功能
互联网有消息透露,谷歌正在为Chrome浏览器增加新的GPU加速功能。Chrome18浏览器将内建开关选项,让消费者选择使用GPU硬件加速基于矢量的SVG图形和CSS过滤器,让Chrome浏览器在未来网页显示上获得突破性速度,并且达成惊人的视觉效果。
Chrome浏览器的SVG和CSSGPU加速支持Windows,Mac,Linux和谷歌的Chrome操作系统,但目前这个功能仍然主要是实验性质,因为只有几个少数网站部署了SVG和CSSGPU加速。
但也有信息表示,tomshardware测试发现Chrome这项功能在显示目前网页方面,显示速度并没有出现任何显着增加,在WebVizHTML5基准测试当中出现了不稳定和崩溃问题。
评论表示,虽然SVG和CSSGPU加速还有待完善,但是Mozilla火狐、微软IE和其他版本浏览器之间的竞争,肯定会推动这种技术快速发展和完善。
设置容器中的内容垂直居中css代码
如实例1设置网页整体居中的代码中内容是居容器的顶部的,而在表格布局时默认是垂直居中的,当我们需要垂直居中的时候该怎么办呢?别害怕,跟我来,也是比较简单的,只用设置容器内的行高就行了。
line-height:500px;
!DOCTYPEhtmlPUBLIC"-//W3C//DTDXHTML1.0Transitional//EN"""
htmlxmlns=""
head
metahttp-equiv="Content-Type"content="text/html;charset=gb2312"/
title标准之路;/title
style
#layout{width:778px;margin:0auto;text-align:center;border:1pxsolid#44b6dc;background:#e1edfb;height:500px;line-height:500px;}
/style
/head
bodypid="layout"标准之路 /p
/body
/html
提示:可以先修改部分代码后再运行
这是一种方法,另外和种方法就是设置的`它内边距padding了,自己可以试试哟~~
CSS对不同浏览器的兼容性解决办法
CSS 对不同浏览器的兼容性解决办法由于CSS 在不同浏览器中存在兼容性问题,所以在使用 p+CSS 布局中,可能导致相同的内容在不同浏览器中出现不同的显示效果,为了解决这些方面的问题,以下针对CSS 某些属性的用法提出相应的一些解决办法。 1、页面居中问题在IE 浏览器下,可以通过定义CSS 样式body {text- align: center;}来实现页面居中,但在FireFox(以下简写为FF)浏览器下此属性就失效了。解决办法:使用"margin- left: auto; margin- right : auto; " 、padding 属性在不同浏览器的显示问题当给p 设置padding 属性后,在FF 浏览器中会导致 width 和height 增加(p 的实际宽度=p 宽+Padding), 但在 IE 浏览器中width 和height 不会增加,这就导致相同的内容在不同浏览器中出现不同的显示效果。解决办法:给p 设定IE、FF 两个宽度,在IE 的宽度前加上IE 特有标记" * " 号。例如: #pwidth{ padding:5px; width:100px; *width:110px; } 3、奇怪的间隙问题有的时候我们明明设好了高度,可在IE6 上却看见一些奇怪的间隙。解决办法:试试在有空隙的p 上加上"font- size:0px;" 4、关于手形光标要将页面内容的光标显示为手形,通常的做法是使CSS 属性cursor: hand; 但这于做法只适用于IE. 解决办法:cursor: pointer; 5、浮动在IE6 产生双倍距离问题例如: #box{ float:left; width:100px; margin:0 0 0 100px; } 这种情况之下IE6 会产生200px 的距离。解决办法:在以上属性的基础上,加上display:inline,使浮动忽略。6、UL 和FORM标签的padding 与margin ul 标签在FF 中默认是有padding 值的, 而在IE 中只有 margin 默认有值。FORM标签在IE 中,将会自动margin 一些边距,而在FF 中margin 则是0;解决办法:css 中首先都使用这样的样式ul,form{margin:0; padding:0;}。 7、截字省略号 .hh { - o- text- overflow:ellipsis; text- overflow:ellipsis; white- space:nowrap; overflow:hidden; } 这个CSS 是定义当内容溢出宽度后会自行的截掉超出部分的文字,并以省略号结尾,但注意Firefox 并不支持。
p+CSS 网页布局的分类
p+CSS 网页布局的分类1、一列固定宽度一列布局是所有布局的基础,也是最简单的布局方式,用 p+CSS 布局的代码如下: XHTML 代码: 一列固定宽度CSS 代码: #main1 { width: 400px; height: 300px; background- color: #EEEEEE; border: 1px solid #999999; } 2、一列自适应宽度自适应的布局能够根据浏览器窗口的大小自动改变其宽度和高度值,是网页设计中一种非常灵活的布局形式,用 p+CSS 布局的代码如下: XHTML 代码: 一列自适应宽度CSS 代码: #main2 { width: 70%; height: 300px; background- color: #EEEEEE; border: 1px solid #999999; } 3、一列固定宽度居中页面整体居中是网页布局中最常见到形式,在传统的表格布局中,使用TABLE 的align="center" 属性来实现,在p+CSS 布局中采用如下代码来实现:XHTML 代码: 一列自适应宽度CSS 代码: p+CSS 网页布局方法探析。如今的网页设计考虑得更多的是搜索引擎以及给用户带来更多的便利,传统的TABLE 网页布局由于其庞大的HTML 代码,使得其在搜索引擎方面显得有些无能为力,而用p+CSS 进行网页布局具有代码精简的优点使得其在这方面又体现出更多的优势。但是又由于CSS 对不同浏览器存在兼容性问题,所以对于初学者来说,在使用p+CSS 进行网页布局过程中可能会遇到各种问题,本文就给大家探讨几点p+CSS 布局的技巧。4、二列固定宽度在有一列固定宽度布局的基础上,实现二列固定宽度也就很简单了,用p+CSS 布局的代码如下:XHTML 代码: 左侧右侧CSS 代码: #left { width: 150px; height: 300px; background- color: #EEEEEE; border: 1px solid #999999; float:left; } #right{ width: 400px; height: 300px; background- color: #EEEEEE; border: 1px solid #999999; float:left; } 5、二列固定宽度居中从一列固定宽度居中的布局方法中,我们就不难完成二列固定宽度居中了,可以使用一个居中的p 作为容器,将二列分栏的p 放置在容器中,从而就实现二列的居中显示。 p+CSS 的代码如下: XHTML 代码: 左侧右侧CSS 代码: #main{ width:554px; margin:0px auto; #left { width: 150px; height: 300px; background- color: #EEEEEE; border: 1px solid #999999; float:left; } #right{ width: 400px; height: 300px; background- color: #EEEEEE; border: 1px solid #999999; float:left; } 这里仅列举了一列、二列的布局方式,实际上三列、四列等多列的布局方式也和二列的布局方式的实现方法是一样的。事实上不管多么复杂的页面设计,在p+CSS 网页布局中,均是以p 为基础,通过一列、二列、三列这些基础的布局方式的相互组合与嵌套来实现复杂的布局。
p+CSS网页布局技巧:设置网页整体居中的css代码
以前用表格布局时设置网页居中非常方便,把表格对齐方式设置为居中就行了,就这么简单,现在呢,用p+CSS样式表控制,好像不是那么容易了,其实也很简单,只不过方式不同而已。
style
#layout { width:778px; margin:0 auto; text-align:center;}
/style
p id="layout"标准之路;/p
请看这段代码,宽度为适合800×600分辨率浏览器的宽度,margin:0 auto; 这句代码就是让居中了,意思是外边距上下设置为0,左右设为自动。这样它就居中了。
那么可能你要问了,text-align:center;为什么还要让内容居中呢?呵呵,别着急,这句是为了适应IE6以下版本的浏览器而加的,IE6以下对margin:0 auto;不能解析为居中,所以用这种方式来补救,以下在设计内容时再用 text-align:left;就可以了。
注:margin和padding的值的顺序为顺时针上右下左,如margin:1px 2px 3px 4px;还可以缩写为上下、左右,如本例,如果为margin:0px;则是各边都为0
提示:可以先修改部分代码后再运行
;

CSS基础知识
这一部分仅仅是Java学习中学的简单的CSS记录,还没有深入学习。
css基础语法
CSS 的出现, 实现了网页的结构和样式分离。美容师!
CSS 规则由两个主要的部分构成: 选择器, 以及一条或多条声明
CSS 规则由两个主要的部分构成: 选择器, 以及一条或多条声明
以内嵌式样式表为例
vs code快捷键: ctrl+/
CSS的英文可以大写,也可以小写
建议全部小写!
颜色名就是使用颜色的英文单词进行表示
更多的颜色名可以通过查询手册得到
颜色值指使用具体颜色的数值表示。 包括: rgb 模式和十六进制模式写法
常用颜色的 rgb 色值:
常用颜色的十六进制色值:
注: 十六进制颜色值简写模式: 如果红、 绿、 蓝三个原色的色值每一个都是由重叠的数字组成, 可以将重叠的数字简化成一个进行书写。 如: 红色 #f00
如果不设置字体属性, 不同的浏览器有自己的默认字体
首选字体需要根据设计图确定, 最后需要设置备用字体
缺点: id 选择器只能实现单选, 不能帮我们完成多选的功能
原子类: 在css中提前设置一些类名, 每个类选择器后面只添加一条css样式属性, 这些属性会在页面中常被使用, 后期可以不需要多次书写属性, 只要将对应的类名添加给需要的标签即可
实际工作中, 通常我们有一个使用规律: 类上样式(CSS), id 上行为(JavaScript)
优点: 减少 class 属性的使用, 选择效率更高
继承性是一个很好的性质, 可以将页面中出现最多的文字样式设置给一个较大的祖先级标签比如 body, 后期所有的后代标签都可以从 body 进行继承
Web前端工程师要了解的html+css基础知识
今天小编要跟大家分析的文章是关于Web前端工程师要了解的html+css基础知识。正在从事Web前端工作的小伙伴们来和小编一起看一看吧,希望本篇文章能够对正在从事Web前端工作和学习的小伙伴们有所帮助。
一、什么是HTML?
HTML即超文本标记语言(HyperTextMarkupLanguage),是用来描述网页的一种语言。
超文本标记语言的结构包括"头"部分(外语:Head)、和"主体"部分(外语:Body),其中"头"部提供关于网页的信息,"主体"部分提供网页的具体内容。
标记语言是一套标记标签(markuptag)
HTML使用标记标签来描述网页
如下代码:
MyFirstHeading
Myfirstparagraph.
例子解释:
与之间的文本描述网页
与之间的文本是可见的页面内容
与之间的文本被显示为标题
与
之间的文本被显示为段落
二、HTML元素
HTML文档是由HTML元素定义的。
HTML元素指的是从开始标签(starttag)到结束标签(end
tag)的所有代码。
td{border:1pxsolid#ccc;padding:5px;margin:auto;}
tdp{text-align:left;}
tdpspan{text-align:center;display:block;}
开始标签
元素内容
结束标签
Thisisaparagraph
href="default.htm"
Thisisalink
注释:开始标签常被称为开放标签(openingtag),结束标签常称为闭合标签(closingtag),大多数HTML元素可拥有属性。
空的HTML元素:
没有内容的HTML元素被称为空元素。在XHTML、XML以及未来版本的HTML中,所有元素都必须被关闭。
在开始标签中添加斜杠,比如:
就是没有关闭标签的空元素,而
是关闭空元素的正确方法,HTML、XHTML和XML都接受这种方式。
即使
在所有浏览器中都是有效的,但使用
其实是更长远的保障。
HTML提示:使用小写标签
HTML标签对大小写不敏感:
等同于
。许多网站都使用大写的HTML标签。
W3School使用的是小写标签,因为万维网联盟(W3C)在HTML4中推荐使用小写,而在未来(X)HTML版本中强制使用小写。
三、HTML属性
HTML标签可以拥有属性。属性提供了有关HTML元素的更多的信息。
属性总是以名称/值对的形式出现,比如:name="value"。
属性总是在HTML元素的开始标签中规定。
属性实例:
HTML链接由标签定义。链接的地址在href属性中指定:
Thisisa
link
注释:属性值应该始终被包括在引号内。双引号是最常用的,不过使用单引号也没有问题。在某些个别的情况下,比如属性值本身就含有双引号,那么您必须使用单引号,例如:name='Bill"HelloWorld"Gates'。
HTML提示:使用小写属性
属性和属性值对大小写不敏感。
不过,万维网联盟在其HTML4推荐标准中推荐小写的属性/属性值。
而新版本的(X)HTML要求使用小写属性。
一些常见HTML属性:
td{border:1pxsolid#ccc;padding:5px;margin:auto;}
tdp{text-align:left;}
tdpspan{text-align:center;display:block;}
属性
值
描述
class
classname
规定元素的类名(classname)
id
id
规定元素的唯一id
style
style_definition
规定元素的行内样式(inline
style)
title
text
规定元素的额外信息(可在工具提示中显示)
四、HTML编辑器
使用Notepad或TextEdit来编写HTML
可以使用专业的HTML编辑器来编辑HTML:
AdobeDreamweaver
MicrosoftExpressionWeb
CoffeeCupHTMLEditor
五、HTML标题
标题(Heading)是通过
-等标签进行定义的。
Thisisaheading
定义最大的标题。
Thisisaheading
定义最小的标题。
注释:浏览器会自动地在标题的前后添加空行。
注释:默认情况下,HTML会自动地在块级元素前后添加一个额外的空行,比如段落、标题元素前后。
以上就是小编今天为大家分享的关于Web前端工程师要了解的html+css基础知识的文章,希望本篇文章能够对正在从事Web前端工作的小伙伴们有所帮助,想要了解更多Web前端相关知识记得关注北大青鸟Web培训官网,最后祝愿小伙伴们工作顺利,成为一名优秀的Web前端工程师。