一、内联标签和块标签的区别

内联,内嵌,行内属性标签:
1、默认同行可以继续跟同类型标签;
2、内容撑开宽度
3、不支持宽高
4、不支持上下的margin和padding
5、代码换行被解析

块属性标签:
1、默认独占一行显示;
2、没有宽度时,默认撑满一排
3、支持所有css命令

二、display

display:block; 显示为块
display:inline; 显示为内嵌

display:inline-block
特性:
1、块在一行显示;
2、行内属性标签支持宽高;
3、没有宽度的时候内容撑开宽度

问题:
1、代码换行被解析(一个空格大小);
2、ie6 ie7 不支持块属性标签的inline-block;

解决办法用float标签

三、float标签

1、浮动: left/right/none

元素加了浮动,会脱离文档流 ,按照指定的一个方向移动直到碰到父级的边界或者另外一个浮动元素停止

1.使块元素在一行显示

2.使内嵌支持宽高

3.不设置宽度的时候宽度由内容撑开

4.脱离文档流

5.提升层级半层(标签的内容会被挤出来)

文档流是文档中可显示对象在排列时所占用的位置

2、clear left/right/both/none 元素的某个方向不能有浮动元素,clear只能加给块元素

清浮动方法

1.父级加高 问题:扩展性不好

2.父级加浮动 问题:页面中所有元素都加浮动,margin左右自动失效(floats bad !)

3.父级加display:inline-block 清浮动方法: 问题:margin左右自动失效;

4.加空标签.clear{height:0;font-size:0;clear:both;}清浮动问题:IE6 最小高度 19px;(解决后IE6下还有2px偏差)

5.在浮动元素下加br清浮动<br clear="all"/>  问题:不符合工作中:结构、样式、行为,三者分离的要求。

6.给浮动元素加after伪类 清浮动方法(现在主流方法)

  •   .clear:after{content:'';display:block;clear:both;}
  •   .clear{zoom:1;} after伪类: 元素内部末尾添加内容;
  • :after{content"添加的内容";} IE6,7下不兼容
  • zoom 缩放

    a、触发 IE下 haslayout,使元素根据自身内容或者父级的父级的大小计算宽高。

    b、FF 不支持;

7.overflow:hidden 清浮动方法; 问题:需要配合 宽度 或者 zoom 兼容IE6 IE7;

8.position:absolute;绝对定位元素子级的浮动可以不用写清浮动方法;

9.position:fixed;固定定位元素子级的浮动可以不用写清浮动方法;(IE6不兼容)

3、浮动兼容性问题

  • IE6双边距BUG(IE6下块属性标签浮动,并且有横向margin,横向margin加倍。):

   a、IE6

   b、浮动

     c、横向margin

     d、块属性标签(加display:inline;)

  • IE6下 li部分兼容性问题:

   a、左右两列布局,右边右浮动IE6 IE7下折行;(方法:左边元素也加浮动)

   b、IE6 IE7 li 没有浮动,内容元素都浮动 在IE6 IE7下 li 下方会产生4px间隙问题;(方法:加vertical-align:top;)

四、光标类型

cursor:text(文本类型)|pointer(光标呈现为指示链接的指针(一只手))|default( 默认光标(通常是一个箭头))

改变当前页的鼠标图形:body{height:1500px; cursor:url(hand.cur),pointer;}

注意:用图片cur不存在兼容性问题。

五、overflow

overflow: scroll | auto | hidden;

  • overflow:hidden;溢出隐藏(裁刀!)
  • overflow:scroll默认有滚动条
  • overflow:auto溢出有滚动条

六、vertival-align / img问题

1、vertical-align 垂直对齐方式

  • a、加垂直对齐方式的同排元素都要加垂直对齐方式;
  • b、垂直对齐方式可以解决元素下方间隙问题;

2、图片下方间隙问题

  • a、display:block; (改变标签本身特性)
  • b、overflow:hidden; (必须知道图片高度) d、vertical-align (暂时最完美的方案)

七、定位

1、position:relative; 相对定位/定位偏移量

a、不影响元素本身的特性;
b、不使元素脱离文档流;
c、如果没有定位偏移量,对元素本身没有任何影响;

定位元素位置控制
top/right/bottom/left 定位元素偏移量。

2、position:absolute; 绝对定位/定位层级

a、使元素完全脱离文档流;

b、使内嵌支持宽高;

c、块属性标签内容撑开宽度;

d、定位元素默认后者高于前者;修改z-index可以控制层级,数越大层级越高;

e、如果有定位父级相对于定位父级发生偏移,没有定位父级相对于整个文档发生偏移;

f、相对定位一般都是配合绝对定位元素使用;

z-index:[number]; 定位层级

八、遮罩滤镜/固定定位

1、遮罩弹窗(优酷弹窗)

  • 标准 不透明度: opacity:0~1;
  • IE 滤镜: filter:alpha(opacity=0~100);

position:fixed; 固定定位 与绝对定位的特性基本一致,差别是始终相对整个文档进行定位;

问题:IE6不支持固定定位;配合JS实现兼容

2、定位其他值:

position:static ;默认值

position:inherit ;从父元素继承定位属性的值

position:relative | absolute | fixed | static | inherit;

3、定位的兼容问题、清浮动方法

  • position:relative;

    在 IE6 下父级的 overflow:hidden是包不住子级的relative;(解决办法:父级加position:relative或者position:absolute;让父级成为定位元素)

  • position:absolute;

    在 IE6 下定位元素的父级宽高都为奇数那么在 IE6 下定位元素的 right 和 bottom 都有1像素的偏差。

  • position:absolute;

    绝对定位元素子级的浮动可以不用写清浮动方法;

  • position:fixed;

    固定定位元素子级的浮动可以不用写清浮动方法;(IE6不兼容)

九、表格

1、表格样式重置

  • table{border-collapse:collapse;} 单元格间隙合并
  • th,td{padding:0;}重置单元格默认填充

2、注意事项:

1、不要给table,th,td以外的表格标签加样式;
2、单元格默认平分table 的宽度
3、th里面的内容默认加粗并且左右上下居中显示
4、td里面的内容默认上下居中左右居左显示
5、table 决定了整个表格的宽度;
6、table里面的单元格宽度会被转换成百分比;
7、表格里面的每一列必须有宽度;
8、表格同一竖列继承最大宽度;
9、表格同行继承最大高度;

3、单元格合并

colspan 属性规定单元格可横跨的列数。 <td colspan="2"></td>

rowspan 属性规定单元格可横跨的行数。 <td rowspan="2"></td>

十、表单

  • label 标签为 input 元素定义标注(建立关联,点击文字可以选中单选按钮) <input type="checkbox" name="" id="a"/> <label for="a">男</label>
  • checked 在页面加载时默认选定的 input 元素。 <input type="checkbox" name="" checked/>

  • disabled 属性规定应该禁用 input 元素。 <input type="checkbox" name="" disabled/>

  • select/option 下拉选框 对高度的支持不兼容;

  • textarea 文本域 各个浏览器下的默认滚动条显示不兼容——解决办法:overf:auto;

    css3新增 resize 调整尺寸属性(resize:none;禁止调整大小);

    焦点框兼容:outline:none;

  • outline 轮廓线— A标签轮廓线去除方法: 1、<a href="#" onfocus="this.blur();">……</a> 2、<a href="#" hidefocus>……</a>

  • IE6下input背景滚动——解决办法:将input用div包住,对div设置和input一样的样式,在去除input的默认属性如下所示:

十一、前端规范

1、所有书写均在英文半角状态下的小写;

2、id,class必须以字母开头;

3、所有标签必须闭合;

4、html标签用tab键缩进;

5、属性值必须带引号;

6、<!-- html注释 -->(注意:符号之间有空格,负责容易出现兼容性问题)

7、/* css注释 */(注意:符号之间有空格,负责容易出现兼容性问题,尤其IE6下)

8、ul,li/ol,li/dl,dt,dd拥有父子级关系的标签;

9、p,dt,h标签 里面不能嵌套块属性标签;

10、a标签不能嵌套a;

11、内联元素不能嵌套块;

 

CSS标签知识的更多相关文章

  1. 前端开发:css基础知识之盒模型以及浮动布局。

    前端开发:css基础知识之盒模型以及浮动布局 前言 楼主的蛮多朋友最近都在学习html5,他们都会问到同一个问题 浮动是什么东西?  为什么这个浮动没有效果?  这个问题楼主已经回答了n遍.今天则是把 ...

  2. CSS基本知识和选择器

    一.CSS基本知识 内联式css样式,直接写在现有的HTML标签中 内联式css样式表就是把css代码直接写在现有的HTML标签中,如下面代码: <p style="color:red ...

  3. css基本知识

    WANGJUN59451   css基本知识 1.CSS 简介 CSS 指层叠样式表 (Cascading Style Sheets),是一种用来表现 HTML 文档样式的语言,样式定义如何显示 HT ...

  4. CSS 基本知识

    1.CSS 简介 CSS 指层叠样式表 (Cascading Style Sheets),是一种用来表现 HTML 文档样式的语言,样式定义如何显示 HTML 元素,是能够真正做到网页表现与结构分离的 ...

  5. (转)第一天 XHTML CSS基础知识 文章出处:标准之路(http://www.aa25.cn/div_css/902.shtml)

    欢迎大家学习<十天学会web标准>,也就是我们常说的DIV+CSS.不过这里的DIV+CSS是一种错误的叫法,建议大家还是称之为web标准. 学习本系列教程需有一定html和css基础,也 ...

  6. CSS基础知识之position

    最近在慕课网学习了 网页布局基础 和 固定层效果 ,都是由声音甜美的 婧享人生 老师所录制,视频详细讲解了CSS中position的用法,在此把学习笔记分享给大家. CSS定位机制 标准文档流(Nor ...

  7. <转载>Div+Css布局教程(-)CSS必备知识

    目录: 1.Div+Css布局教程(-)CSS必备知识 注:本教程要求对html和css有基础了解. 一.CSS布局属性 Width:设置对象的宽度(width:45px). Height:设置对象的 ...

  8. 【CSS】 CSS基础知识 属性和选择

    css基础知识 html的基本标签都是千篇一律的,为了能够个性化外观,就需要进行样式的调整,而css就是专门用来维护,管理样式的一种格式.在html中定义css有三种方法 1. 为标签添加style属 ...

  9. CSS基础知识01

    一.CSS基础知识介绍 1.css是cascading style sheet层叠式样式表的简写 2.css小用法 加粗:font-weight:bold;             正常用:norma ...

随机推荐

  1. C# 动态执行批处理命令

    本文转载:http://www.cnblogs.com/lenic/p/4097045.html C# 动态执行一系列控制台命令,并允许实时显示出来执行结果时,可以使用下面的函数.可以达到的效果为: ...

  2. On-board diagnostics connector SAE J1962

    http://en.wikipedia.org/wiki/On-board_diagnostics#Standard_interfaces OBD-II diagnostic connector Th ...

  3. Cortex-M3 Context Switching

    http://www.embedded.com/design/embedded/4231326/Taking-advantage-of-the-Cortex-M3-s-pre-emptive-cont ...

  4. hdu 4740 The Donkey of Gui Zhou bfs

    The Donkey of Gui Zhou Time Limit: 20 Sec Memory Limit: 256 MB 题目连接 http://acm.hdu.edu.cn/showproble ...

  5. hdu 5286 How far away ? tarjan/lca

    How far away ? Time Limit: 20 Sec Memory Limit: 256 MB 题目连接 http://acm.hdu.edu.cn/showproblem.php?pi ...

  6. Linux文件时间属性

    Linux文件时间属性                                                                                         ...

  7. 【JavaScript】XMLHttpRequest Level2使用指南

    XMLHttpRequest是一个浏览器接口,使得Javascript可以进行HTTP(S)通信. 最早,微软在IE 5引进了这个接口.因为它太有用,其他浏览器也模仿部署了,ajax操作因此得以诞生. ...

  8. memached+asp.net 4.0 分布式缓存

    由于准备做一个商品站点,希望做一个memached缓存.折腾了一个多星期.本机是存进去取出来为空. 各种办法都试过了,还是不行.最后用同事电脑測试是能够的,然后将DEMO公布到阿里云也是能够的.支持. ...

  9. JAVA设置SimpleDateFormat函数时区

    SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss"); sdf.setTimeZone(TimeZo ...

  10. QNX 实时操作系统(Quick Unix)

    Gordon Bell和Dan Dodge在1980年成立了Quantum Software Systems公司,他们根据大学时代的一些设想写出了一个能在IBM PC上运行的名叫QUNIX(Quick ...