常见错误避免:1.div ——id不能为数字。2.doctype 不加, 会导致低成本ie解析效果不同。3.文件编码与charset声明不一致。
用float要设置width。
父div中,子div都浮动,那么父div不会被子div撑起,如此父div之下的div(小于子div的高度)就显示不出。所以要父div设施高度。
border——三要素:宽(border-width)、形状(border-style)、颜色(border-color)。
font:style(正斜体类型)、weight(粗细)、size/line-height(大小/线高)、family(字体)。
字体两大类:sans-serif(非衬线字体)和serif(衬线字体)。
font-family:'xxx','xxxx','xxxxx',sans-serif。这样浏览器优先选择xxx字体,如果显示电脑没这字体,则显示下一个字体即xxxx,依次类推。如果该电脑都没有前面所述所有字体,则选择该电脑拥有的sans-serif字体的任意一种。
background:gray url(xx.jpg) no-repeat -150px 530px;背景:颜色 图片 重复 左定位 上定位。
css初始化:
相同的元素,如li,在不同的浏览器下,显示的效果稍有不同
是因为浏览器对个元素的margin,border,font-size等略有不同
想要杜绝这种现象,就要我们自己通过css强制让所有元素的属性值都一样
这样浏览器显示就一致了,减少了不兼容情况的发生。
这个过程,叫做css初始化
h标签和p标签:
h1-6系列 表示1-6号标题,字体越来越小
p表示段落,在新闻网站中,h与p经常一起出现
新闻标题一般用h表示,而新闻的每一段内容,适合用p标签。
图片是内联元素,同时是内联替换元素。
css允许我们针对a类标签的4种状态设置各自的css特性,叫做css伪类。
1.active 一般不写
2.一定要注意顺序是 lvha
3. a:link可以简写为a
字符实体:
在html开发中,有一些字符,不适合直接写出,如>;(>) <;(<)
一般的格式:&(&符号) + 实体名 + ;
实体有很多,常用的有:>; <;"; ¥; ©;(>; <; "; ¥; ©; )
bug的几种常见原因:
没有使用正常的doctype
各浏览器对不同标签的初始值不同
自身书写不规范
浏览器bug引起
ie6下,margin双倍。解决措施,_display:inline。(要加_,避免在其他浏览器下冲突;_只在ie下起作用)
<pre></pre>标签,你里面写成什么要的格式,浏览器就显示成什么样
色彩的表示:
本质是组合3原色
1.用16进制组合[0-255]-->[00,FF],#234567;
2.用10进制来组合,如rgb(240,25,25);
3.html提供常用颜色的名称,如orange,pink,purple,red等
4.#EEEEEE-->#EEE,当6个字符一样时,可以简写为3个字符
尺寸的表示:
像素、百分比、em
em是相对大小,是指其父元素中的1个"M"的大小,简单理解为父元素的font-size就是1个en单位。
css画圆角:
目前的主浏览器都已经支持
border-radius:10px;
css画圆,border-radius是width的一半
相对定位(position:relative)和绝对定位(position:absolute):
相对定位是指元素在其正常的位置,偏移某些元素;
绝对定位是指相对于父元素的top,left,right,bottom来定位
用绝对定位时,父元素要求有position属性才行,否则将依据父的父,父的父的父,...直到body,哪
个祖先有position属性,相对哪个祖先,如果都没有相对于body
z-index可以让重叠的多个绝对定位哪个显示在前,哪个显示在后。
当定义比较小的元素的时候,在后面加overflow:hidden以适应各浏览器
清楚浮动的办法,使用专门的clr div来做。
Css中常用的四种选择器:
1.类选择器(class选择器)
2.id选择器
3.html选择器
4.通配符选择器
四个选择器优先权:id选择器>class选择器>html选择器>通配符选择器
细节注意:
一、另外父子选择器:
1.父子选择器可以有多级(但是实际开发中不要超过三层)
2.父子选择器有严格的层级关系
3.父子选择器不局限于什么类型的选择器。比如#id span span;.s1 #id span;div #id .s2
二、一个元素可以同时有id选择器和class选择器
如:<div class="s1" id="d1">hello</div>
三、一个元素最多有一个id选择器但是可以有多个类选择器
如<div class="类选择器1 类选择器2"></div> 如果两个类选择器有冲突,以在css里靠后面的为准
行内元素它只占能显示自己的宽度,而且他不会占据整行
块元素它不管自己的内容有多少,会占据整行,而且换换行显示
常见的行内元素有:<a><span><input type="xxx">
常见的块元素有<div><p>
css相互之间的引用
@import url('被引入的css的url')