最近在开发过程中遇到了一个很奇怪的问题,本来是想着在前端点击工具栏的按钮弹出的窗口居中显示,是利用$(window).height()减去弹出窗口的高度并处以2来使窗口居中显示,但是弹出窗口却不听话,老是跑到网页底部,尤其在笔记本上甚至看不到弹出窗口:

后来通过跟踪调试发现:$(window).height()的返回值竟然和$(document).height()的返回值一样,我们先看看这两个的区别:

$(window).height(); //浏览器当前窗口可视区域高度
$(document).height(); //是获取当前 也就是你浏览器所能看到的页面的那部分的高度  这个大小在你缩放浏览器窗口大小时 会改变 与document是不一样的

  根据这个说明它俩的值应该不一样,但是在我这里却出现了它俩的返回值是一样的,这让我百思不得其解啊,难道是撞邪了…后来偶然发现在jsp文件的开头没有加<!DOCTYPE html>,也没多想就把它加上了,说来也奇怪了,原来工具栏点击按钮弹出窗口竟然居中显示了,也就是$(window).height()的值正常了,心中泛起了一万个…

为此专门查了一下<!DOCTYPE html>的作用

  DOCTYPE是document type(文档类型)的简写,在web设计中用来说明你用的XHTML或者HTML是什么版本。其中的DTD叫文档类型定义,里面包含了文档的规则,浏览器就根据你定义的DTD来解释你页面的标识,并展现出来。特别是没有声明或声明不正确将在标准浏览器下更是不能正常显示。
  要建立符合标准的网页,DOCTYPE声明是必不可少的关键组成部分;除非你的XHTML确定了一个正确的DOCTYPE,否则你的标识和CSS都不会生效
  网页中用了 <!DOCTYPE html> 就表示该页面采用了W3C标准,这样做可以增强页面的兼容性,降低对浏览器的依赖性。
不加这一行,就表示页面采用浏览器本身的解析标准,这样会造成页面在不同的浏览器(IE、火狐等)可能出现不同的显示效果。
  也许这个解释能说明一定的原因。 定义DOCTYPE是个好习惯,也希望大家能写出标准规范的代码!

最新文章

  1. 怎么用canvas画秒针_用canvas画一个钟表
  2. 你知道怎么分库分表吗?如何做到永不迁移数据和避免热点吗?
  3. hdu 4044 GeoDefense (树形dp | 多叉树转二叉树)
  4. python学会了可以做什么菜_python学习之路(24)
  5. 【深度学习】新的深度学习优化器探索(协同优化)
  6. GDCM:将文件封装在RawData中的测试程序
  7. SQLite 语法(http://www.w3cschool.cc/sqlite/sqlite-syntax.html)
  8. svn服务器创建分支原理,svn 创建分支、合并分支、以及报错处理
  9. python io密集型应用案例-Python中单线程、多线程和多进程的效率对比实验实例
  10. 将堆栈异常返回前端显示
  11. 绿色iPhone 13和紫色iPad Air将在明天发布?网友:苹果又寻思在配色上“整活儿”...
  12. ST电机库无感FOC模式接电机前准备工作(1)----PWM波的生成
  13. 画法几何及工程制图考试卷A卷
  14. springboot+quartz定时任务
  15. 电脑键盘部分按键失灵_笔记本键盘部分失灵怎么办,笔记本个别键失灵的处理方法...
  16. c++之 推箱子小游戏
  17. 服务器精益改善系列,用OEE来指导生产改善,知识贴干货!「标杆精益」
  18. 阿里二面一问MySQL就开始野了,抓着底层原理不撒手啊!
  19. 后台Redirect,出现502错误
  20. python mlagent 安装

热门文章

  1. c语言菜单 键盘,三、Windows键盘快捷键—处理菜单项
  2. BIGEMAP中添加第三方卫星影像
  3. 光纤专线与普通宽带区别(ASDL)
  4. NOI-1.5(29) 数字反转
  5. Java 8中的Base64编码和解码
  6. tsc打印机android,使用热敏打印机Android打印条形码
  7. centerOS安装涛思
  8. Jeesite4本地及服务器上传文件、图片详解
  9. CDN(Content Delivery Network)内容分发网络
  10. 【软件测试的计划和策略】