当前位置: 首页 > 编程日记 > 正文

IE6,7,8,FF兼容总结

做到浏览器兼容需要注意的四大要素(一)
2009-05-31 17:09

1 Css

1.1 选择器

  • 通配符 * :: IE6不支持
  • 类选择器 .class :: IE6元素的class不能超过2个
  • 属性选择器 [att=value] [att] [att|=value] [att(^|$|~)=value] :: IE6不支持
  • 关系选择器 E + F; E > F ; E ~ F :: IE6不支持

1.2 伪类

  • :first-letter,:first-line,:visited,:link :: 都支持
  • :hover :: IE6只支持A元素,IE7及FF支持A以外元素
  • :before和:after :: IE7和firefox支持,好好利用可以实现很多不错的效果

1.3 !IMPORTANT

  • 突破样式表属性>ID>双CLASS>单CLASS>元素,后者>前者的层叠顺序,不过IE6不支持

1.4 DocType

文档类型决定了IE的渲染模式,标准模式(standard)还是兼容模式(quirks),并且声明必须放在所有代码之前,包括注释。<!DOCTYPE html PUBLIC “-//W3C//DTD XHTML 1.0 Transitional//EN”“">http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">

查看详情Quirks模式与Standards模式

  • 盒模型 标准模式,实际宽度=width+border-width+padding-width+margin-width 兼容模式下,实际宽度=width
  • 水平居中 IE中,标准模式下可使用margin:0 auto水平居中。兼容模式下无效。
  • 行内元素尺寸 标准模式下不能设置span等行内元素的width和height,兼容模式下可以。
  • 不正确的语法 譬如未书写尺寸单位,大小写不正确,嵌套不正确等,兼容模式下尺寸采用默认单位px,其它的都尽量修正。标准模式下这条css规则无效。
  • 相对高度 元素设定百分比高度时,需要父元素高度已指定,所以最好先指定html和body元素高度为100%
  • IE7的新CSS特性 min/max-width/height,position:fixed,:hover,overflow:visible 等在兼容模式下会失效。
  • 默认样式 FF下,在进入quirks模式后,会加载其目录下的res/quirk.css,设置一些其它的默认样式

1.5 属性

  • Z-INDEX SELECT元素浮动在其它元素的上方,不能改变z-index,必要的时候采用js来控制select的显隐达到需要的效果 FLASH默认的wmode为window模式,浮动在其它html元素的上方,指定z-index不会改变这种情况。需要将wmode指定为transparent或者opaque
    • 元素级别层叠剖析
  • CURSOR FF 不支持cursor:hand,使用cursor:pointor
  • 列表取消缩进 IE margin:0;FF padding:0
  • 自动折行
    • DIV
       1 .wrap1 {
      2 word-break:break-all;
      3 word-warp:warp;
      4 over-flow:auto!important;
      5 }
      6 .wrap2 {
      7 white-spacing:normal;
      8 word-warp:warp;
      9 over-flow:auto!important;
      10 }
    • TABLE
      1 table{
      2 table-layout:fixed;
      3 }
  • 固定宽度不折行
    1 <td width="25%" nowrap><div>content</div></td>
  • 空DIV仍占空间
    1 .empty{
    2 line-height:0%;
    3 height:0px;
    4 font-size:0pt;
    5 }

1.6 滤镜(filter)

IE私有,效率也比较低,一般不建议使用。

  • 透明

IE:

1 #id{ filter:progid:DXImageTransform.Microsoft.Alpha(style=0,opacity=60)}

FF:

1 #id{opacity:0.6}

1.7 行为(behavier)

在css中使用js, IE特有,借此可实现max-width,min-width等效果,不过效率比较低.同时这里也是可能存在XSS攻击的地方.

1.8 Bug

  • 高度不适应 :: 内层设完margin或者padding后比外层高度还高。解决方案:在内层上下各加一个空div.
  • 容器不扩展 :: 内存浮动后,外层缩成直线。解决方案:内存结束时清除浮动。
  • margin加倍 :: 在IE 5.x、IE6中,为float的盒子指定margin时,左侧margin可能会变成两倍的宽度。通过改用padding或指定盒子为display:inline可以解决
  • IE6 3px :: IE6中左浮动div右侧的文本和块与左div的距离会增加3px,解决方法给左侧的div增加margin-right:-3px;或者避免使文本直接与左div接触,同时右侧的块使用display:inline-block
  • IE6捉迷藏 :: 一个浮动元素后而跟着一些非浮动元素,然后是一个清理元素,所有这些元素都包含在一个设置了背景颜色或图像的容器元素中。假如清理元素砬到了浮动元素,那么中间的非浮支元素看起来消失了,隐到了父元素的背景颜色或图像后面,只有在刷新页面时才重新出现。解决方案:去掉背景或者容器指定宽高,或者指定行高,或者将浮动元素和容器元素的position属性设置为relative也会减轻这个问题。
  • IE6断头台 :: 当容器中左浮动对象右侧直接跟链接,并且链接的hover状态属性有变化的话,可能导致容器的高度重新计算,并切掉左浮动对象的部分内容。解决方案:浮动对象后面不直接跟非浮动对象,或者最后清除浮动。

1.9 css hack

  • @import
    1 @import ("notIE.css") screen;
  • +_hack
    1  #content {
    2 width:500px;
    3 +width:480px; 4 _width:490px: 5 }
  • 条件注释
    1 <!--[if lt IE 7]>
    2 <link type="text/css" rel="stylesheet" href="cond.css" />
    3 <![endif]-->
  • 更多CSS HACK

2 Javascript

2.1 检测技术

  • 对象检测
1     if (window.XMLRequest){
2 this.req = new XMLRequest;
3 }
4 else if (window.ActiveXObject){
5 this.req = new ActiveXObject("Micorsoft.XMLHTTP")
6 }
7 else {
8 throw new Error("Your browser doesn't support an XML HTTP Request.");
9 }
  • 浏览器检测
 1     var sUserAgent = navigator.userAgent;
2 var fAppVersion = parseFloat(navigator.appVersion);
3 var isOpera = sUserAgent.indexOf("Opera") > -1;
4 var isIE = sUserAgent.indexOf("compatible") > -1
5 && sUserAgent.indexOf("MSIE") > -1
6 && !isOpera;
7 var isMoz = sUserAgent.indexOf("Gecko") > -1
8
9 var isWin = (navigator.platform == "Win32") || (navigator.platform == "Windows");
10 var isMac = (navigator.platform == "Mac68K") || (navigator.platform == "MacPPC")
11 || (navigator.platform == "Macintosh");
12 var isUnix = (navigator.platform == "X11") && !isWin && !isMac;
  • 总结 :: 优先使用对象检测,尽量避免使用浏览器检测,这样能够适应更多的浏览器,而且还可以预防未来浏览器版本变化导致的一些不兼容问题。

2.2 Event

DOM标准中事件模型是先捕获再冒泡,IE中只有冒泡阶段。

事件获取
var evt = arguments[0] || window.evt;
添加/删除事件Handler
  • IE :: attachEvent(window,‘onload’,handler)/distachEvent(window,‘onload’,handler)
  • FF :: addEventListener(window,‘load’,handler,false)/removeEventListener(window,‘load’,handler,false)
SCRIPT标签
IE中script标签具有event和for属性 供事件绑定用 firefox 不支持
常用事件属性
IEFF说明
cancelBubblestopProgation()阻止事件起泡
srcElementtarget事件对象
returnValueparentDefault()阻止默认行为
中文输入法模式下的keyup事件
IE:触发keydown和keyup, 不触发keypress. 能够获得输入值。
Firefox:触发keydown和keypress, 不触发keyup. 输入值未能获得。在回车后会触发keyup, 可获得输入值。
Opera:keydown, keypress和keyup都不触发,输入值也未能获 鼠标滚轮事件IE为mousewheel,FF为‘DOMMouseScroll’.滚轮的滚动距离IE为event.wheelDelta,FF为event.detail,而且二者的方向相反,IE滚轮向下滚wheelDelta为负值

2.3 Dom

  • FF的body在body标签没有被浏览器完全读入之前就存在,而IE则必须在body完全被读入之后才存在
  • IE FF均支持parentNode,FF不支持parentElement
  • FF不支持innerText,但有textContent
  • DOM标准中Node无text和xml属性
  • IE会忽略由空白和换行组成的部分,而FF将其作为文本节点
  • IE有一些非标准的、Mozilla 不支持的内容操作方法,包括检索值、插入文本以及邻近某个节点插入元素,比如 getAdjacentElement 和 insertAdjacentHTML
  • IE和DOM标准的文档片段处理方式不一样
  • document.write(),如果写入的内容有脚本,FF会把字符串中的</script>解释成外层<script>的结束标签,需要将script标签拆分,document.write(“<script>alert(‘hello)</”+“script>”);
  • Table操作ie不允许使用tr的innerHTML赋值,包括tbody

2.4 XML

  • 空白 IE忽略 FF作为文本节点
  • IE不支持节点类型的名称常量,如NODE.ELEMENT_NODE,只支持数字.可以自定义 var NODE = {ELEMENT_NODE:1}
  • XMLRequest 参考
  • XML解析器 参考
  • XPath 参考
  • XSLT转换 参考

2.5 Encode

  • 浏览器中URL的编码特性

2.6 CompatMode

  • 判别方法document.compatMode,页面未声明doctype时是backCompat,否则是CSS1Compat(IE8可能采用documentMode), FF不受CompatMode的影响,IE下可理解为IE5.5与IE6的区别
  • 对JS的影响主要体现在clientWidth等属性上,关于对象使用document.body(简称b)还是document.documentElement(简称de)。
  • 窗口尺寸 FF下窗口高度(不包含滚动条)为b.clientHeight,包含滚动条FF下面没有 兼容模式下窗口高度(不包含滚动条)为b.clientHeight,包含滚动条IE下则为b.offsetHeight| 标准模式下不包含滚动条IE下为de.clientHeight,包含滚动条IE下为de.offsetHeight
  • 内容尺寸 HTML高度FF下b.scrollHeight和de.scrollHeight,BODY的高度为b.offsetHeight 兼容模式下HTML高度IE为b.scrollHeight,Body无 标准模式下HTML高度IE下为de.scrollHeight,Body高度为b.clientHeight|b.scrollHeight|b.offsetHeight
  • 滚动位置 FF下b.scrollLeft 兼容模式下b.scrollLeft 标准模式下de.scrollLeft

2.7 css

  • height和width的单位 赋值时firefox需要加上单位px,IE可以不加

2.8 native

  • 数组长度

[1,2,3,4,] IE下长度为5,firefox长度为4

  • 对象

{key1:‘value1’,key2:‘value2’,}最后一个逗号IE下报错。

  • 年份

2004年,而getYear()在FF下得到104,IE下则得到2004,建议使用getFullYear()代替

  • for in

使用for in操作Dom元素时,IE会先列出内置的属性(没有function),再列出用户自定义的方法和属性,FF会先列出用户自定义的属性和方法,再列出内置的属性和方法

2.9 selector

  • IE专有document.all(id), IE下id可直接获取元素, Firefox 都不支持; 应统一使用document.getElementById(id);
  • IE下id可直接获取元素, 因此声明变量时一律加上var;
  • IE下获取集合中子元素可使用[],(), Firefox不支持(); 应统一使用[]; document.form1.elements[name1]
  • frames,forms,anchors等集合, IE下可通过id和name获取, firefox支持name获取, 可选方式, 使用name或者name和id保持一致
  • 自定义属性IE下可通过elem.attr和getAttribute来访问, firefox支持后者,
  • document.getElemsByName()IE下不能取得没有name属性的元素如div

2.10 窗口

  • 窗口位置
    • IE window.screenLeft,window.screenTop
    • FF window.screenX windwo.screenY
  • 窗口大小
    • IE 未提供
    • FF window.outerWidth window.outerHeight
  • 视口大小 :: 显示HTML页的大小
    • IE document.body.offsetWidth|document.body.offsetHeight
    • FF window.innerWidth|window.innerHeight

2.11 大小写

IE 对于部分属性会忽略大小写,但FF不会 比如screen.availWidth

2.12 页面加载

页面加载的过程有两个事件,页面完全加载的window.onload,可理解为页面下载完成。另一个是dom准备完成事件,这时图片等可能尚未下载完。如果需要尽早的执行js,可以利用以下方式,创建domReady方法

 1 function _fi(){if(arguments.callee.dn)return;arguments.callee.dn=true;if(_timer)clearInterval(_timer);for(var i=0;i<onloadList.length;i++){onloadList[i].call(window)}};
2 if(document.addEventListener){document.addEventListener("DOMContentLoaded",_fi,false);}
3 4 5 6 7 if (/KHTML|WebKit/i.test(navigator.userAgent)){var _timer=setInterval(function(){if(/loaded|complete/.test(document.readyState)){_fi();}},10);}
8 window.οnlοad=_fi;
9 window.onloadList=[];
10 var domReady=function(fn){onloadList.push(fn);}

mooltools内置了domready事件

1 window.addEvent('domready', function(){
2 alert('the dom is ready');
3 });

2.13 剪贴板操作

 1 function copyToClipboard(txt) {
2 if(window.clipboardData) {
3 window.clipboardData.clearData();
4 window.clipboardData.setData("Text", txt);
5 } else if(navigator.userAgent.indexOf("Opera") != -1) {
6 window.location = txt;
7 } else if (window.netscape) {
8 try {
9 netscape.security.PrivilegeManager.enablePrivilege("UniversalXPConnect");
10 } catch (e) {
11 alert("被浏览器拒绝!\n请在浏览器地址栏输入'about:config'并回车\n然后将'signed.applets.codebase_principal_support'设置为'true'");
12 }
13 var clip = Components.classes['@mozilla.org/widget/clipboard;1'].createInstance(Components.interfaces.nsIClipboard);
14 if (!clip)
15 return;
16 var trans = Components.classes['@mozilla.org/widget/transferable;1'].createInstance(Components.interfaces.nsITransferable);
17 if (!trans)
18 return;
19 trans.addDataFlavor('text/unicode');
20 var str = new Object();
21 var len = new Object();
22 var str = Components.classes["@mozilla.org/supports-string;1"].createInstance(Components.interfaces.nsISupportsString);
23 var copytext = txt;
24 str.data = copytext;
25 trans.setTransferData("text/unicode",str,copytext.length*2);
26 var clipid = Components.interfaces.nsIClipboard;
27 if (!clip)
28 return false;
29 clip.setData(trans,null,clipid.kGlobalClipboard);
30 alert("复制成功!")
31 }
32 }

2.14 加入收藏夹

  • IE :: window.external.AddFavorite(sURL, sTitle);
  • FF :: window.sidebar.addPanel(sTitle, sURL, “”);

2.15 IE7的变化

  • 打开的窗口无法从子窗口直接关闭,
1   window.opener = null;2   window.open("",'_self');3   window.close();
  • 支持原生的XMLHTTP
  • 支持postion:fixed 非常好的一个定位属性(需要指定DocType为标准模式),使得元素相对于浏览器定位,固定元素在左上角、右下角之类的非常简单。 标准模式下IE6也可通过以下方式模拟实现
1 2 3 4 5 6 7 

2.16 firefox 3的变化

firefox 3.0起支持使用模式对话框

2.17 其它

转载于:https://www.cnblogs.com/linyijia/archive/2010/08/20/1804117.html

相关文章:

二叉树的路径(根节点到叶节点)Binary Tree Paths

为什么80%的码农都做不了架构师&#xff1f;>>> 问题&#xff1a; Given a binary tree, return all root-to-leaf paths. For example, given the following binary tree: 1/ \ 2 3\5 All root-to-leaf paths are: ["1->2->5", "1->…

股市币市:数据分析与交易所公告(20190226)

沪深300 1. 沪深300分位数数据 2. 沪深300股指图 3. 沪深300分位数图 4. 沪深300筹码分布图 数据来源&#xff1a; https://finance.sina.com.cn/stock/ BTC比特币 1. 比特币分位数数据 2. 比特币交易图 3. 比特币分位数图 4. 比特币筹码分布图 数据来源&#xff1a; https…

零基础怎么学UI设计

互联网的快速发展&#xff0c;给很多企业和求职人员有了更多的创业和工作机会&#xff0c;近几年&#xff0c;UI设计行业招聘需求人数就在不断上涨&#xff0c;越来越多的人想转行做UI设计。那么零基础怎么学UI设计?有哪些简单有效的学习方法?我们来看看下面的详细介绍。 零基…

原创:嵌入图片的HTML内容在FLASH AS3中正确显示的最佳解决方案

做一个项目&#xff0c;遇到这个该死的问题&#xff0c;尝试了几乎所有解决方法&#xff0c;几近崩溃&#xff0c;终于找到完美解决方案。因为在网上&#xff0c;无论中文还是英文&#xff0c;搜索了无数遍&#xff0c;都没人给出正确答案&#xff0c;所以&#xff0c;在此记下…

总结六条对我们学习Linux系统有用的忠告

接触linux需要的是端正自己的态度&#xff0c;这个玩意可不是一天两天就能拿得下的。学习个基础&#xff0c;能装系统、能装常见服务、能编译、能配置存储空间、能配置系统参数、能简单查看系统负载等基本够用。但这些只保证能做机房运维&#xff0c;真正和进阶的运维工作不在机…

一份来自上海院校的考研预调剂系统已开放名单!

距离 19 考研初试成绩的公布已经有一段时间了&#xff0c;成绩不错的同学就安心准备复试吧&#xff0c;全力备考&#xff0c;一定要拿到属于你的录取通知书&#xff01;成绩不满意&#xff0c;擦线或者排名靠后的同学&#xff0c;复试、调剂两手准备&#xff0c;注定咱们要花更…

【Python培训基础知识】Python生成器函数

对于程序而言&#xff0c;内存也是很重要的&#xff0c;因为程序中很多数据都是保存在内存中的&#xff0c;如果内存中存储的数据过多&#xff0c;那么系统就会崩溃&#xff0c;这是人们不希望发生的。 可以采用生成器推导式来解决内存不足的问题。例如&#xff0c;利用生成器推…

普华永道重磅报告:决定未来的八大核心科技

在新兴科技高速发展的今天&#xff0c;各个技术风口你方唱罢我登场&#xff0c;把我们裹挟其中&#xff0c;无论是创业者&#xff0c;还是大公司的决策人&#xff0c;都需要时刻判断趋势。 也许每个人心里都在想类似的问题&#xff1a;“这些人工智能技术会如何影响我们的物联网…

[转帖][实用]Linux 释放内存方法

先看看内存使用状况[rootnode1 ~]# free -mtotal used free shared buffers cachedMem: 8004 6557 1446 0 163 5630-/ buffers/cache: 763 7240Swap: 1983 0 1983把内存里的数据暂时写到硬盘里[rootnode1 ~]# sync修改 /proc/sys/vm/drop_caches文件[rootnode1 ~]# echo 3 >…

股市币市:数据分析与交易所公告(20190227)

沪深300 1. 沪深300分位数数据 2. 沪深300股指图 3. 沪深300分位数图 4. 沪深300筹码分布图 数据来源&#xff1a; https://finance.sina.com.cn/stock/ BTC比特币 1. 比特币分位数数据 2. 比特币交易图 3. 比特币分位数图 4. 比特币筹码分布图 数据来源&#xff1a; https…

【Web前端培训】预解析(变量提升)

今天千锋小编为大家介绍一下一下JavaScript中的预解析(变量提升)。从什么是预解析及变量的预解析和函数的预解析及加载流程进行学习(注意&#xff1a;我们这里说的ES5中的预解析)。 什么是解析 首先代码执行肯定需要一个执行环境&#xff0c;浏览器会提供一个供javaScript执行的…

如何利用 C# 爬取「猫眼电影:热映口碑榜」及对应影片信息!

我们生活在一个快节奏的时代里&#xff0c;每天除了辛苦的提升自己&#xff0c;为生活打拼之外&#xff0c;偶尔的放松去看场电影也是必要的。可是能够抽出的时间有限&#xff0c;选择看哪部电影就是一个挠头的问题了。 幸好&#xff0c;有类似猫眼电影、豆瓣电影、淘票票这样…

【Java学习笔记之五】java数组详解

数组 概念 同一种类型数据的集合。其实数组就是一个容器。 数组的好处 可以自动给数组中的元素从0开始编号&#xff0c;方便操作这些元素。 格式1&#xff1a; 元素类型[] 数组名 new 元素类型[元素个数或数组长度]; 示例&#xff1a;int[] arr new int[5]; 格式2&…

参加Java培训需要注意什么

java编程语言对于零基础的同学来说&#xff0c;想要自学是非常困难的&#xff0c;因为java学习包含很多阶段&#xff0c;所以零基础的小白和初学者报java培训班学习是非常有必要的&#xff0c;下面小编就给大家详细的介绍一下参加Java培训需要注意什么? 参加Java培训需要注意什…

写得不错的几篇C/C++博客

转&#xff1a;http://blog.csdn.net/rubyzhudragon/category/562309.aspx 转载于:https://www.cnblogs.com/xinzhuangzi/archive/2010/08/22/4100543.html

股市币市:数据分析与交易所最新公告(20190228)

沪深300 1. 沪深300分位数数据 2. 沪深300股指图 3. 沪深300分位数图 4. 沪深300筹码分布图 数据来源&#xff1a; https://finance.sina.com.cn/stock/ BTC比特币 1. 比特币分位数数据 2. 比特币交易图 3. 比特币分位数图 4. 比特币筹码分布图 数据来源&#xff1a; https…

优化webpack配置

happypack happypack可以加快rebuild的速度 在开发的时候&#xff0c;需要将babel-loader替换成happypack/loader{test: /\.(js|jsx)$/,exclude: /(node_modules|vendor)/,loader: isDev ? happypack/loader : babel-loader } 同时添加插件, 根据需要定义不同的babel配置&…

Java多线程学习处理高并发问题

在程序的应用程序中&#xff0c;用户或请求的数量达到一定数量&#xff0c;并且无法避免并发请求.由于对接口的每次调用都必须在返回时终止&#xff0c;因此&#xff0c;如果接口的业务相对复杂&#xff0c;则可能会有多个用户.调用接口时&#xff0c;该用户将冻结. 以下内容将…

防止表单多次提交

防止表单多次提交 //jQuery①<script type"text/javascript"> $("input:submit").each(function() { var srcclick $(this).attr("onclick"); if(typeof(srcclick)"function"){ $(this).click(function() { if (srcclick()) { …

Visual Studio环境变量使用实例:使用环境变量来组织project

前言 在前一篇文章Visual Studio中的环境变量(以Visual Studio 2013为例)中介绍了VS中的环境变量&#xff0c;本文将以实际样例说明怎样合理使用这些环境变量来组织VCproject。使用vs环境变量来组织project 通常一个解决方式包括多个项目。这些项目相互之间可能存在依赖关系。以…

股市币市:数据分析与交易所最新公告(20190301)

沪深300 1. 沪深300分位数数据 2. 沪深300股指图 3. 沪深300分位数图 4. 沪深300筹码分布图 数据来源&#xff1a; https://finance.sina.com.cn/stock/ BTC比特币 1. 比特币分位数数据 2. 比特币交易图 3. 比特币分位数图 4. 比特币筹码分布图 数据来源&#xff1a; https…

Python常用6个技术网站汇总分享!

Python是一门面向对象的编程语言&#xff0c;它具有丰富和强大的库&#xff0c;能够把用其他语言编写的各种模块轻松地联结在一起&#xff0c;因此也常被称为“胶水语言”。Python技术会随着互联网的不断发展一直迭代和更新&#xff0c;所以需要Python开发的人员一直保持一个学…

devstack —— 单机部署 OpenStack 体验

2019独角兽企业重金招聘Python工程师标准>>> devstack 是一个用来快速部署 OpenStack 的脚本。 使用非常简单&#xff0c;执行 ./stack.sh 即可&#xff0c;但是在安装过程中遇到一些问题会中断&#xff0c;通过不断修正尝试&#xff0c;事后在这里记录一下&#xf…

使用ultraedit和cl编译器打造简易c/c++开发环境

在visual c下&#xff0c;每编写一个简单的小程序&#xff0c;就得生成一大串中间文件&#xff0c;另人十分的不爽。下面提供一个新的编写c/c程序的方法&#xff1a;   &#xff08;1&#xff09;&#xff0c;下载utraledit-32编辑器&#xff0c;推荐v11.  &#xff08;2&a…

股市币市:数据分析与交易所最新公告(20190302)

BTC比特币 1. 比特币分位数数据 2. 比特币交易图 3. 比特币分位数图 4. 比特币筹码分布图 数据来源&#xff1a; https://coinmarketcap.com/currencies/bitcoin/ 数字货币交易所公告 BigOne 2019/03/01 BigONE 用户体验月&#xff1a;有奖寻建议 &#xff0c;重金找 BUG …

分享五款java学习辅助工具,总有你用的上的~

想要学好java技术&#xff0c;除了自身的努力&#xff0c;辅助工具也不缺少&#xff0c;辅助工具可以帮助大家在今后的工作中可以提高工作效率&#xff0c;下面小编就来分享五款java学习辅助工具&#xff0c;总有你用的上的~ 五款java学习辅助工具&#xff1a; 1、Eclipse Ecli…

如何利用 C# 爬取「猫眼电影专业版:票房」数据!

在现代生活中&#xff0c;看电影已经成为大家的一种休闲方式。 前几天&#xff0c;我们介绍了 如何利用 C# 爬取「猫眼电影&#xff1a;热映口碑榜」及对应影片信息&#xff01;&#xff0c;通过这份“热映口碑”榜单&#xff0c;我们可以看到大家对当前热播电影的评价&#x…

MOSS的CSS样式说明,一个老外总结的

MOSS的CSS样式说明&#xff0c;一个老外总结的 http://www.heathersolomon.com/content/sp07cssreference.htm 转载于:https://www.cnblogs.com/greeny/archive/2010/09/03/1817027.html

什么是整型?Python整型详细介绍

整数类型(int)简称整型&#xff0c;它用于表示整数&#xff0c;例如&#xff0c;100、2016等。整型字面值的表示方式有四种&#xff0c;分别是十进制、二进制(以“0B”或“0b”开头)、八进制(以数字“0”开头)和十六进制(以“0x”或“0X”开头)。 Python的整型可以表示的范围是…

hibernate.hbm2ddl.auto的value

Hibernate 配置参数hibernate.hbm2ddl.auto Hibernate中的配置文件&#xff1a; <properties> <property name"hibernate.hbm2ddl.auto" value"create" /> </properties> 参数说明&#xff1a; validate 加载hibernate时…