DOCTYPE html PUBLIC 让人吐血的问题(转载)div.style.left为空

为什么使用DOCTYPE HTML 你知道如果没有它,浏览器在渲染页面的时候会使用怪异模式;你知道各个浏览器在怪异模式下对各个元素渲染是有差异的。所以你会写像这样的doctype: 复制代码代码如下: <!DOCTYPE html PUBLIC “-//W3C//DTD XHTML 1.0 Transitional//EN” “http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd”> 好在现在的各种web开发工具都足够强大,支持插入模板代码,因此你并不需要把这又长又臭的doctype一个个字母的敲出来。但是如果你受够了它,你也许可以尝试下面这个写法: 复制代码代码如 立即下载

转载出处:

http://lj.soft.blog.163.com/blog/static/79402481201411033831473/


使用了DOCTYPE html PUBLIC之后有些东西改变了~~害我查找了好久的错误~~追踪的好累啊~~ 

在javascript里面调用一些属性的名称发生了改变 我说怎么得不到document.body.scrollTop的值 
以后js脚本取document值时候有问题估计就是这里弄出来的~~ 

很明显 使用了DOCTYPE html PUBLIC脚本之后document.body.scrollTop必须用document.documentElement.scrollTop来调用~document.documentElement.scrollLeft也是~ 
诸如此类都要改 

在定义了DOCTYPE之后,使用document.documentElement.scrollLeft代替document.body.scrollLeft。同理使用document.documentElement.scrollTop代替document.body.scrollTop。 

这样在有DOCTYPE的时候,图层也可以滚动了。 

但是,在没有DOCTYPE的时候document.documentElement.scrollLeft也永远为零了,那么,能否有一个在有没有DOCTYPE定义都可以用的方案涅?嘿嘿。 

那就可以这样写:

 

 

function scrollTop() //浏览器滚动条位置 
{ 
var scrollTop; 
if (document.documentElement && document.documentElement.scrollTop){ 
scrollTop = document.documentElement.scrollTop; 
}else if (document.body){ 
scrollTop = document.body.scrollTop; 
}else if (window.pageYOffset){ 
scrollTop = window.pageYOffset; 
} 
return scrollTop; 
}

------------------------------------------------------------------------------------

<!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/html; charset=gb2312" />
<title>定义了 HTML's DOCTYPE 的 Event 事件</title>
<script language="JavaScript" type="text/javascript">
function getvalue(e){
    if (!document.all){
        winW = window.innerWidth;
        winH = window.innerHeight;
        curX = e.pageX - window.pageXOffset;
        curY = e.pageY - window.pageYOffset;
        mouX = e.pageX;
        mouY = e.pageY;
        broX = window.pageXOffset;
        broY = window.pageYOffset;
    }else{
        winW = document.documentElement.clientWidth;
        winH = document.documentElement.clientHeight;
        curX = event.clientX;
        curY = event.clientY;
        mouX = event.clientX + document.documentElement.scrollLeft;
        mouY = event.clientY + document.documentElement.scrollTop;
        broX = document.documentElement.scrollLeft;
        broY = document.documentElement.scrollTop;
    }
    alert(" 窗口可见宽度(winW): "+winW+"/n/n 窗口可见高度(winH): "+winH+"/n/n 距窗口左边距离(curX): "+curX+"/n/n 距窗口顶部距离(curY): "+curY+"/n/n 距页面左边距离(mouX): "+mouX+"/n/n 距页面顶部距离(mouY): "+mouY+"/n/n 页面滚动的宽度(broX): "+broX+"/n/n 页面滚动的高度(broY): "+broY);
    return true;
}
document.onclick=getvalue;
</script>
</head>

<body>
<img src="" width="400" height="500" alt="" />
</body>
</html>



补充:如果javascript写的不规范,可能出现 div.style.top 或者 div.style.left 为空的情况

【ros】ROS1的安装和相关使用方法 主要学习ros相关内容 阅读详情

相关推荐

用Verilog在FPGA上做个电子琴:从矩阵键盘到蜂鸣器的完整实现(附代码)

本文详细介绍了如何使用Verilog在FPGA上实现一个完整的电子琴系统,涵盖矩阵键盘扫描、音调生成和蜂鸣器驱动等核心模块。通过模块化设计和PWM调制技术,开发者可以构建一个可交互的音乐播放器,项目代码完整且易于扩展,适合FPGA初学者和数字逻辑设计爱好者实践。

weixin_29191669的博客 403

什么是DOCTYPE 它对网页起何作用?[z]

From: http://tech.163.com/06/1023/09/2U41FR4R000918BL.html   DOCTYPE是document type(文档类型)的简写,在web设计中用来说明你用的XHTML或者HTML是什么版本。 要建立符合标准的网页,DOCTYPE声明是必不可少的关键组成部分;除非你的XHTML确定了一个正确的DOCTYPE,否则你的标识和CSS都不会生效。 ...

liudaoru - 悟 429

Keil C51里用printf打印数据,为啥总出乱码?手把手教你%bd、%hd、%ld的正确用法

本文深入解析Keil C51中printf打印数据出现乱码的根本原因,并提供格式符%bd、%hd、%ld的正确用法指南。通过详细的调试技巧和实战案例,帮助开发者解决串口输出问题,提升单片机开发效率。

weixin_26854829的博客 281

DOCTYPE html PUBLIC 指定了 HTML 文档遵循的文档类型定义

DOCTYPE html PUBLIC 指定了 HTML 文档遵循的文档类型定义 今天看到一篇CSS应用的一个友好搜索,我按网页上的代码复制、粘贴后预览时总达不到效果,而直接拷贝他的实例却能达到效果,开始以为书写顺序不对,于是调整书写顺序,还是不行,最后找到了我认为最没什么用处的第一行才...

2368

YOLOv5+Astra Pro Plus深度相机:手把手教你实现实时目标检测(附ROS配置技巧)

本文详细介绍了如何将YOLOv5目标检测算法与Astra Pro Plus深度相机结合,构建实时目标检测系统。内容涵盖从硬件选型、环境搭建、ROS配置到YOLOv5部署与深度信息融合的完整流程,并分享了性能优化、避障算法等实战技巧,帮助开发者在机器人视觉等场景中快速实现智能感知应用。

weixin_28292761的博客 389

SSTI模板注入及绕过姿势(基于Python-Jinja2)

http://xmctf.top:8962/?name={{%22%22[%22\x5f\x5fclass\x5f\x5f%22]["\x5F\x5Fbase\x5F\x5F"]["\x5F\x5Fsubclasses\x5F\x5F"]()[233]["\x5F\x5Finit\x5F\x5F"]["\x5F\x5Fglobals\x5F\x5F"]["\x5F\x5Fbuiltins\x5F\x5F"]['eval']("\x5F\x5Fimport\x5F\x5F('os'))")}}

Y4tacker的博客 1万+

HTML <!DOCTYPE>标记

本文章向大家介绍HTML 标记,主要内容包括DOCTYPE语法、浏览器兼容性及DOCTYPE使用实例。具体内容请阅读文章全文。

wuxiaopengnihao1的博客 3099

C#精准获取Windows已安装应用清单的完整方案

Windows已安装应用识别是IT资产管理、安全合规与自动化运维的基础能力。其核心原理在于突破文件系统表象,以注册表为可信数据源,分层解析HKLM/HKCU、64位/32位视图及MSI Products路径中的元数据。技术价值体现在可验证(如过滤SystemComponent=1)、可关联(通过ProductCode绑定补丁与许可证)、可操作(启动路径二次验证+卸载命令沙箱执行)。典型应用场景包括终端合规审计、软件资产清查、静默卸载脚本开发及多版本应用聚合分析。本文聚焦C#原生实现,覆盖注册表四路采集、La

weixin_33552698的博客 636

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">

JSP页面中,在&lt;html&gt;&lt;/html&gt;上面经常会有一句话: &lt;!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"&gt; 一直不知道是什么意思,也没有过多关注过这句话。今天有个界面兼容性的BUG,改了这句话就好用了,因此稍微查找了一些资料,对其初有了解,总结如下: DOCTYPE...

q798888291的博客 1597

macOS向日葵闪退终极修复:权限设置与后台运行全解析

本文详细解析了macOS上向日葵远程控制软件闪退问题的根源与解决方案,重点介绍了权限设置与后台运行的优化方法。通过配置屏幕录制、辅助功能等关键权限,以及优化后台进程管理,有效解决闪退问题,提升远程控制软件的稳定性与使用体验。

fern8的博客 1767

单相变换器的二次纹波分析

1. 单相PWM整流器的二次纹波产生原因   单相变换器的二次纹波产生的原因是功率含有二次脉动分量。设电网电压 us=Vmsin(wt),电网电流IL=Imsin(wt−θ)I_L=I_msin(wt-\theta)IL​=Im​sin(wt−θ)。其中w是电网电压披绿,θ\thetaθ是电流之后电压相位。保证输入功率和输出功率相等,就要保证两者的直流量和交流量对应相等。   uDu_DuD​为 PWM 整流器直流电容电压平均值,IoI_oIo​ 为负载电流平均值 ,uDC^\widehat {u_{DC}

qq_38847810的博客 4974

DOCTYPE的资料

!DOCTYPE 指定了 HTML 文档遵循的文档类型定义(DTD)。 Microsoft® Internet Explorer 6 的新增内容 你可使用此声明将 Internet Explorer 6 及以后版本切换到标准兼容模式下。 语法 HTML  顶级元素  可用性 "注册//组织//类型 标签//定义  语...

299

【x264编码器】章节1——x264编码流程及基于x264的编码器demo

提供了一种方便的方式来根据指定的配置profile应用相应的设置到 x264 参数结构体上。不同的配置文件类型会对参数结构体进行不同的修改,以满足特定的编码需求。然后是编码器参数,包括帧参考数、最大关键帧间隔、最小关键帧间隔、B 帧数、场景切换阈值等。结构体的成员进行赋值,将其初始化为默认值。之后是一些编码器设置,如去块滤波、CABAC 编码、码率控制方法、参考帧压缩系数等。接下来是一系列与视频属性相关的参数,如色度格式、宽度、高度、宽高比等。然后是一些与日志输出、分析类型、量化矩阵等相关的参数。

vcvdv123的博客 5744

在IE或者360浏览器的兼容模式下页面错乱

在IE或者360浏览器的兼容模式下页面错乱

Daydream的博客 3163

蓝牙模块HM-10手册

蓝牙模块HM-10手册,该手册对蓝牙模块HM-10进行了详细的介绍和使用方法以及一些AT指令。

假人有限元模型

假人模型,车辆碰撞假人有限元模型,适合做乘员安全的研究者利用

HTML网页 <!DOCTYPE>详解

//文档类型声明(浏览器并不只支持 HTML,还支持 XML 类型的文档;对 HTML 文件来说,浏览器使用文件开头的 DOCTYPE 来决定使用怪异模式处理或标准模式处理)。

aaistudy的博客 2333

锂电池充电器电路设计 里面有电路

锂电池充电器电路设计 里面有电路 3.7V升压到5V电路设计。

网页 的DOCTYPE HTML public 会导致 页面的部分事件不触发

最近忙着做JS,在JS里头有用到鼠标的一些事件时,通常我都是把鼠标事件包含在一个JS文件中调用在鼠标事件中若包含如下鼠标的特效,就会导致事件触发:js/sb_cd.js// JavaScript Document  var sb_cd_a_Colour=fff000;var sb_cd_b_Colour=00ff00;var sb_cd_c_Colour=ff00ff;var sb

study everyday 1700

efm32 入门.pdf

本PDF共计22页,介绍的是操作驱动API,下载与否自己斟酌。

HTML中的DOCTYPE需要注意的事情!

在我们使用一些页面设计工具生成页面的时候,往往在页面的开始会生成如下的DOCTYPE信息,那么什么是DOCTYPE?DOCTYPE是文档类型定义,就是规定了在HTML页面中使用什么样的标签是合法的。这些规范是w3c组织制定的,到目前为止有过如下几种DOCTYPE:1、这是基于HTML4.0规范,是比较老的一种。2、http://www.w3.org/TR/xhtml1/DTD/xhtml1-t

「智捷课堂」关东升的博客 1919

【HTML】DOCTYPE html PUBLIC

http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <!--  此标签可告知浏览器文档使用哪种 HTML 或 XHTML 规范。.在上面的声明中,声明了文档的根元素是 html,它的公共标识符被定义为 "-//W3C//DTD XHTML 1.0 Strict//EN" 的 DTD 中进行了定义。浏览器将明白如何寻找匹配此公共标识符的

凝结的技术博客 1369

HTML 文档规范与解析模式:DOCTYPE、<html> 标签以及结构化页面

HTML 规范是 HTML 文档的标准,它定义了文档的结构和规则,以确保网页在不同浏览器中呈现一致的效果。DOCTYPE 声明:定义文档类型和解析模式。基本结构标签:包括等。编码声明:指定文档编码格式。元数据:如页面标题、描述和其他 meta 信息。结构化内容:包括文本、图像、链接、表单等内容元素。规范化 HTML 文档结构有助于提高页面的可读性、可维护性和跨浏览器的兼容性。正确使用DOCTYPE>声明、标签的语言设置,以及和。

小蜗牛的珍贵百宝箱 2646

HTML 简介

HTML 是用来描述网页的一种语言。HTML 指的是超文本标记语言:HyperTextMarkupLanguageHTML 不是一种编程语言,而是一种标记语言标记语言是一套标记标签HTML 使用标记标签来描述网页HTML 文档包含了HTML标签及文本内容HTML文档也叫做web 页面。

Aforxiaoxie 1350

什么是 !DOCTYPE html 以及他的重要性?

什么是&lt;!DOCTYPE html&gt;? 在HTML文档初,往往会有这么一句话&lt;!DOCTYPE html&gt;,那么它的意义是什么呢?它是html5标准网页声明,全称为Document Type HyperText Mark-up Language,意思为文档种类为超文本标记性语言或超文本链接标示语言,现在是这个简洁形式,支持html5标准的主流浏览器都认识这个声明。表...

gaoqiang1112的博客 449

doctype html public w3c,<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w...

此声明必须出现在文档的起始位置处,出现在标签之前。/p>Transitional//EN" "http://www.w3.org/TR/html4/strict.dtd"!DOCTYPE表示文档类型HTML表示顶级元素PUBLIC表示可用性为 PUBLIC 可公开访问的对象若是 SYSTEM 表示系统资源,如本地文件或URL第一个双引号里的内容分别是“注册//组织//类型 标签//定...

weixin_29035147的博客 3489

<!DOCTYPE html>报错Uncaught SyntaxError: Unexpected token ‘<?

是.js,那么浏览器就会按js代码来解析语法,当然报错啦!必须把文件扩展名改为htm或者html,比如 index.htm。,文件>>文件夹 >>选择文件在集成终端打开 >>node HelloWord.html。你这是html文档,不是js代码,而你的。

m0_62472302的博客 5913

由DOCTYPE造成的Javascript运行错误问题之解决方法

由DOCTYPE造成的Javascript运行错误问题之解决方法

hftyhv的博客 808

DOCTYPE! HTML PUBLIC 声明规范

DOCTYPE的常用声明:按照 HTML 4.01 XHTML 1.0 XHTML 1.1 列表如下,错误的DOCTYPE HTML PUBLIC反而会导致页面解析错误。 HTML 4.01规范分为:Strict, Transitional, Frameset &lt;!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" ...

lanjiasheng的专栏 565
上一篇: java内置调试工具的使用
下一篇: html 鼠标事件,注释浮动框,提示文字
fantasyagain
博客等级 码龄19年 18粉丝 91原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值