别忘了文档类型声明

2024-01-12 16:32
文章标签 类型 文档 声明 别忘了

本文主要是介绍别忘了文档类型声明,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

以前在做网页的表格数据展示的时候,我曾经也想做一个固定Header,滚动内容的Table,但是用css的方法没有成功,而脚本的方法太麻烦,就没有用。前几天看到一个网页,也就是用固定Header滚动Body的Table,它是纯粹采用css实现的。难得的不是只用css实现了这种效果,而是它让多种浏览器能够兼容,它支持IE6/5.x、Opera7.x、Mozilla1.x、Konqueror 3.x等。他的地址是:http://www.imaputz.com/cssStuff/bigFourVersion.html
增强版本是:http://www.imaputz.com/cssStuff/bulletVersion.html

我打算按照他的方法在我现在的工作中应用。因为写的是ASP程序,所以用InterDev,先是创建了一个html文档,然后按照网页中的方法创建了table和css,但是发现它失败了,header照样滚动,我以为我的css漏掉了些东西,就把它全部copy到我的网页中,但是还是不成功。
执行原来的网页css能够让table成功滚动,而我的网页就是不行,检查了半天没有发现什么问题,后来突然看到源文件头有一行文档类型声明:
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
我想我找到原因了,于是直接把这行DOCTYPE的声明复制到我的网页中,用IE6打开浏览,成功了。
这行文档类型声明要求浏览器将网页文档准循严格标准的XHTML1.0进行分析,我最初创建的网页没有文档类型声明,所以IE浏览器采用兼容模式分析文档,这时有些css定义是无效或者不完全的。兼容模式中position: relative这个css声明无效。使table header固定的css定义正是这个声明。
我尝试了HTML4.01过渡标准的文档声明:
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
它也能够成功的运行,这是几乎是最宽松的标准html文档类型声明。Dreamweaver2004创建新网页默认就是按照这个标准定义来声明的。InterDev创建的新网页是没有文档类型声明的,在IE浏览器中,没有声明的则采用向下兼容的Quirk标准分析网页,我建议在创建网页的时候都加上一个HTML4.01过渡标准或者XHTML1.0过渡标准的文档类型声明,首先这使识别DOCTYPE声明的浏览器分析你的网页的时候,能够按照标准创建界面效果,而不是按照非标准的、兼容的方式来分析网页,而这也不会影响低版本的浏览器对网页的分析。其次如果你不是很熟悉严格的XHTML标准,网页中产生了某些非标准代码,浏览器将无法兼容(比如你无法使用<a>中的target属性)。

后来同事发现扩展版本如果没有声明也能够执行,那是因为这个版本它增加了一个IE5.x之后独有的css属性
top: expression(document.getElementById("tableContainer").scrollTop)
expression能够动态的返回css属性的值,所以IE6浏览器不按照标准模式分析网页也能够成功。

这篇关于别忘了文档类型声明的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/598467

相关文章

Python Pillow 库详解文档(最新推荐)

《PythonPillow库详解文档(最新推荐)》Pillow是Python中最流行的图像处理库,它是PythonImagingLibrary(PIL)的现代分支和继承者,本文给大家介绍Pytho... 目录python Pillow 库详解文档简介安装核心模块架构Image 模块 - 核心图像处理基本导入

C#实现将Office文档(Word/Excel/PDF/PPT)转为Markdown格式

《C#实现将Office文档(Word/Excel/PDF/PPT)转为Markdown格式》Markdown凭借简洁的语法、优良的可读性,以及对版本控制系统的高度兼容性,逐渐成为最受欢迎的文档格式... 目录为什么要将文档转换为 Markdown 格式使用工具将 Word 文档转换为 Markdown(.

详解如何使用Python构建从数据到文档的自动化工作流

《详解如何使用Python构建从数据到文档的自动化工作流》这篇文章将通过真实工作场景拆解,为大家展示如何用Python构建自动化工作流,让工具代替人力完成这些数字苦力活,感兴趣的小伙伴可以跟随小编一起... 目录一、Excel处理:从数据搬运工到智能分析师二、PDF处理:文档工厂的智能生产线三、邮件自动化:

Python实现自动化Word文档样式复制与内容生成

《Python实现自动化Word文档样式复制与内容生成》在办公自动化领域,高效处理Word文档的样式和内容复制是一个常见需求,本文将展示如何利用Python的python-docx库实现... 目录一、为什么需要自动化 Word 文档处理二、核心功能实现:样式与表格的深度复制1. 表格复制(含样式与内容)2

Maven项目中集成数据库文档生成工具的操作步骤

《Maven项目中集成数据库文档生成工具的操作步骤》在Maven项目中,可以通过集成数据库文档生成工具来自动生成数据库文档,本文为大家整理了使用screw-maven-plugin(推荐)的完... 目录1. 添加插件配置到 pom.XML2. 配置数据库信息3. 执行生成命令4. 高级配置选项5. 注意事

Python程序的文件头部声明小结

《Python程序的文件头部声明小结》在Python文件的顶部声明编码通常是必须的,尤其是在处理非ASCII字符时,下面就来介绍一下两种头部文件声明,具有一定的参考价值,感兴趣的可以了解一下... 目录一、# coding=utf-8二、#!/usr/bin/env python三、运行Python程序四、

Python使用python-docx实现自动化处理Word文档

《Python使用python-docx实现自动化处理Word文档》这篇文章主要为大家展示了Python如何通过代码实现段落样式复制,HTML表格转Word表格以及动态生成可定制化模板的功能,感兴趣的... 目录一、引言二、核心功能模块解析1. 段落样式与图片复制2. html表格转Word表格3. 模板生

浅谈Redis Key 命名规范文档

《浅谈RedisKey命名规范文档》本文介绍了Redis键名命名规范,包括命名格式、具体规范、数据类型扩展命名、时间敏感型键名、规范总结以及实际应用示例,感兴趣的可以了解一下... 目录1. 命名格式格式模板:示例:2. 具体规范2.1 小写命名2.2 使用冒号分隔层级2.3 标识符命名3. 数据类型扩展命

使用Python从PPT文档中提取图片和图片信息(如坐标、宽度和高度等)

《使用Python从PPT文档中提取图片和图片信息(如坐标、宽度和高度等)》PPT是一种高效的信息展示工具,广泛应用于教育、商务和设计等多个领域,PPT文档中常常包含丰富的图片内容,这些图片不仅提升了... 目录一、引言二、环境与工具三、python 提取PPT背景图片3.1 提取幻灯片背景图片3.2 提取

Android实现在线预览office文档的示例详解

《Android实现在线预览office文档的示例详解》在移动端展示在线Office文档(如Word、Excel、PPT)是一项常见需求,这篇文章为大家重点介绍了两种方案的实现方法,希望对大家有一定的... 目录一、项目概述二、相关技术知识三、实现思路3.1 方案一:WebView + Office Onl