html5 如何固定 header

html-css028

html5 如何固定 header,第1张

语义化标签。

原来写一个页面。

比如有头部。和底部。我们都是定义一个div

只不过头部有一个class=header 尾部的div是class=footer

现在html5出现以后。主张语义化标签。

现在我们写样式的时候。选择器直接就写header就可以了。

不需要这么写 div.header

这样的好处是使得文档结构层次清晰。利于代码编写和开发。

还有搜索引擎优化等等的好处。

position:fixed 可以固定。

position:absolute也行。相对于fixed -》absolute不能随着页面的拉伸而定义在头部或你想定义的地方(即浏览器最大最小化固定的位置会不一样)

而fixed如果是定义紧贴头部的化,浏览器最大最小化都是在头部不会变形。

很简单的啊。我直接写在页面了哦,class id 属性什么的你自己写了。

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">

<html xmlns="http://www.w3.org/1999/xhtml">

<head>

<meta http-equiv="Content-Type" content="text/htmlcharset=utf-8" />

<title>iframe</title>

</head>

<body style="margin:0padding:0">

<div style="height:100px">头部div</div>

<iframe style="height:600pxwidth:100%">

</iframe>

<div style="height:100px">底部div</div>

</body>

</html>

这种固定导航的效果,很多电商例如淘宝,都会有。

我说说他们的实现方法。

一,js算scroll的高度,就是滚动条滚了多高。

二,算悬浮的导航距离顶部的高度。

三,window的时候,对比这两个高度,如果一大于二,那么导航加个fixed。(IE7以上都有效)

然后用js处理下IE6就行。

建议去搜下相关js代码,我一般都用jQuery写。

你想要的table的头部也是一个道理,但是thead没办法fixed吧?

所以弄2个table吧,1个table放头部内容,1个table放具体内容。

另外,expression慎用,消耗浏览器资源不是一点两点。