风火家人开发记要

技术总结精华贴

Category: 转载

转载

【转载】调制解调器(ADSL)宽带错误代码大全

ADSL错误代码 错误信息: 600 操作挂起。 601 检测到无效的端口句柄。 603 呼叫人的缓冲区太小。 604 指定了不正确的信息。 605 不能设置端口信息。 如果错误仍然存在,请删除并重新创建“网络和拨号连接”. 606 指定的端口未连接。 607 检测到无效事件。 608 指定的设备不存在。 609 指定的设备类型不存在。 610 指定的缓冲区无效。 611 指定的路由不可用。 612 指定的路由未分配。 网络配置可能不正确,重新启动计算机,以确保所有所作的配置更改都能生效。当计算机运行在一个很低的资源情况下时,也会发生这种错误。 613 指定的压缩无效。 614 没有足够的缓冲区可用。 615 未找到指定的端口。 远程访问记事簿文件和当前的“网络和拨号连接”配置可能不一致如果更改了通讯设备(例如:串行口或调制解调器),请确保重新配置“网络和拨号连接”。 如果错误仍然存在,请删除并重新创建“网络和拨号连接”. 616 异步请求挂起。 617调制解调器已经断开连接。 等待“网络和拨号连接”完成断开。 618 指定的端口未打开。 619 指定的端口未连接。 重新启动计算机,以确保所有所作的配置更改都能生效。 620 无法决定端点。 网络配置可能不正确,重新启动计算机,以确保所有所作的配置更改都能生效。如果错误仍然存在,请参考Windows 2000错误日志,查找详细的警告或错误。 621 系统无法打开电话簿。 622 系统无法加载电话簿。 623 系统无法找到此连接的电话簿项。 “网络和拨号连接”位于电话簿,但不能找到指定的连接项。该错误不应该发生,除非另一个应用程序正在使用“网络和拨号连接”并且使用了不正确的连接项。 624 系统无法更新电话簿文件。 “网络和拨号连接”使用位于%systemroot%\system32\ras文件夹中的rasphone.pbk文件。请确保磁盘未满,并且有更改文件的权限。 625 系统在电话簿中找到无效信息。 电话簿文件rasphone.pbk可能已经损坏,从%systemroot%\system32\ras文件夹中删除该文件,然后重新启动“网络和拨号连接”,创建一个新文件。 626 无法加载字符串。 627 无法找到关键字。 “网络和拨号连接”的配置文件之一可能含有无效信息,如果正使用Windows 2000不支持的调制解调器,则应安装使用支持的调制解调器。 628 连接被关闭。 如果是拨号连接,请重拨。如果持续得到该消息,请减小调制解调器的初始速度,并关闭调制解调器的高级特性。如果问题仍然存在,请与系统管理员联系。 如果是虚拟专用网络(VPN)连接,访问可能因远程访问策略或其他身份验证问题而被拒绝。请向系统管理员咨询。 629 连接被远程计算机关闭。 连接链接因下列某一原因断开: 1、无法恢复的电话线路错误 2、噪声线路 3、被系统管理员断开 4、不能以选定的速度与远程访问服务器上的调制解调器正确地进行协商。 如果重拨错误仍然存在,请把连接的调制解调器的速度降低,然后,试着重拨。可尝试连接其他的服务器以确定此问题是否与正在呼叫的特定远程访问服务器有关。同样,也可尝试通过另一个电话线连接到原始服务器。 630 由于硬件故障,调制解调器断开连接。 链接因下列某一原因断开: 1、调制解调器(或其他的通讯设备)发生了无法恢复的错误。 2、通讯端口发生了无法恢复的错误。 3、调制解调器电缆没有插上。 要诊断并更正问题,请执行下列操作: 1、确保调制解调器已经通电,并且电缆可靠地连接。 2、确保调制解调器正常运行,可以通过控制面板进行指令测试。 631 用户断开了调制解调器连接。 计算机的某个操作断开了连接。 重拨。 632 检测到不正确的结构大小。 633调制解调器正在使用或没有配置为拨出。 如果是拨号网络连接,网络连接试图使用的com端口正在被其他活动的网络连接或其他的进程(例如:诸如传真程序之类的电话线路监视程序)使用。退出阻止使用com端口的应用程序。 如果是虚拟专用网络(VPN),则不能打开网络连接试图使用的VPN设备。如果问题仍然存在,请向系统管理员咨询。 634 您的计算机无法在远程网络上注册。 远程访问服务器不能在网络上注册你的计算机名称,这一般随着NetBIOS协议一起出现,但也可能随着tcp/ip或者ipx一起出现。通常,当地址已经在网络上使用时,会发生此错误。请与系统管理员联系。 635 出现未知错误。 如果错误仍然存在,请参考Windows 2000错误日志,查找详细的警告或错误。 636 连接到端口的设备不是所期望的设备。 用于连接的硬件配置和配置设置可能互相矛盾,如果更改通讯设备(例如串行端口或调制解调器),重新配置拨号连接。 637 检测到不能转换的字符串。 638 请求超时。 639 异步网络不可用。 640 发生与 NetBIOS 有关的错误。 调制解调器不能以设置的速度协商连接,将调制解调器的初始速度设置为较低的值,然后重拨。也可以尝试禁用调制解调器压缩和软件压缩。如果还不能建立连接,请试着将ipx/spx、NetBIOS协议添加到该连接。 641 服务器不能分配支持客户机所需的 NetBIOS 资源。 请系统管理员提高远程访问服务器的资源容量,或者停掉一些不重要的服务,如:信使服务、网络DDE. 642 计算机的某个 NetBIOS 名已经在远程网络上注册。 同名的另一计算机已经登陆到远程网络,网络中的每一台计算机都必须以唯一的名称进行注册,验证下列项目: 1、与你的计算机同名的计算机不位于你正在连接到的网络。 2、计算机没有物理地连接到正在试图连接的网络。 643 服务器端的网卡出现故障。 请将该错误报告给系统管理员。 644 您将无法接收网络弹出式消息。 连接到网络的另一台计算机正在使用你的计算机名,写给你的消息被发送到该计算机。如果要接收远程工作站的消息,则在下次拨入网络之前必须记着注销办公用计算机。该错误不影响outlook、outlook express、exchange发送的消息。 645 发生内部身份验证错误。 发生内部错误,重新启动计算机,以确保所有所作的配置更改都能生效。 646 此时间不允许该帐户登录。 为限制到该网络的访问配置账户。如果需要在一天的不同时间(而不是当前配置的时间)访问网络,请系统管理员更改设置。 647 此帐户被禁用。 用户账号是禁用的。这可能是因为重复的登陆失败尝试,或因为系统管理员因为安全原因而禁用了该账户。请系统管理员启用“本地用户和组”中的账户。 648 该帐户的密码已过期。 如果通过“网络和拨号连接”进行连接,则系统会提示更改密码。如果使用rasdial进行连接,则可以通过如下操作更改密码: 1、按Ctrl+Alt+Del 2、单击“更改密码”,然后按照提示操作 如果你是系统管理员,但是你的密码过期,你自己不能更改密码,只能由另外的管理员来更改。 649 帐户没有拨入的权限。 由于下列原因,导致帐户没有拨入的权限: 在选定的域内拥有有效帐户,但该帐户没有访问远程网络的权限。请系统管理员启用用户帐户的拨入权限,或者启用“路由和远程访问”中的拨入权限。 帐户或者已经到期、被禁用、或者已被锁定或者拨入访问已被锁定。 试图在所允许的服务器登录时间限制之外进行连接,或者试图在所允许的拨入访问的时间界限之外进行连接,或者应用到该帐户的策略可能不允许拨入访问。 呼叫者的 ID 规则可能阻止了连接的进行,例如,需要从指定的号码拨入帐户。 远程计算机可能只允许本地帐户进行连接。 要求某个身份验证协议,而计算机不能对此协议进行协商,或者计算机正在试图使用未被远程计算机上的策略验证的协议。 如果在其他域内拥有拨入权限的帐户,请执行下列操作以使用该域上的帐户。 1.右键单击连接,然后单击“属性“。 2.在“选项”选项卡上,选中用于名称、密码、证书等的“提示符”以及 Windows 登录域复选框。 3.在“安全措施”选项卡中,清除“自动使用我的 Windows登录名和密码(及域,如果有的话)”复选框,然后单击“确定”。 4.双击该连接,然后单击“拨号”。 5.指定适当的用户名、密码和域。 650远程访问服务器没有响应。 下列情况中的任一种都可能导致该错误: 1.没有运行远程访问服务器。与系统管理员联系,以确保该服务器正在运行。 2.线路噪声太大,或者调制解调器不能以选定速度与远程访问服务器的调制解调器正确地协商。对于任一可能性,都应降低调制解调器的初始速度 (bps),然后重拨。 3.检查“硬件兼容列表”,以确保您的调制解调器已被列出。 4.可能需要更换调制解调器的串行电缆。 5.用于连接的身份验证设置可能不正确。请与系统管理员联系,以确保您的身份验证设置满足远程访问服务器的要求。 6.可能同时启用了远程访问服务器的软件压缩和调制解调器硬件压缩。通常,启用远程服务器软件压缩,禁用硬件压缩。 651调制解调器报告错误。 调制解调器(或其他设备)报告错误。 如果是拨号连接,并且您正在使用所支持的外置调制解调器,请关闭并重新启动调制解调器。关闭并重新启动“网络和拨号连接”,然后重拨。如果“网络和拨号连接”不支持您的调制解调器,请切换到支持的调制解调器。请确保正确地配置了远程访问的调制解调器。 如果是虚拟专用网络(VPN) 连接,则可能已在连接配置中指定了不正确的 TCP/IP 地址,或者试图连接的服务器不可用。要确定该服务器是否可用,请向系统管理员咨询。 652 有一个来自调制解调器的无法识别的响应。 调制解调器(或其他设备)返回的消息没在您的一个或多个脚本文件(Pad.inf、Switch.inf 或 filename.scp)中列出。 如果正在使用支持的外置调制解调器,请关闭并重新启动调制解调器,然后重拨。 如果问题仍然存在,请尝试以较低的初始速度连接。 653 在设备 .INF 文件部分中未找到调制解调器所请求的宏。

查看全文
其他, 转载

【转载】一堂价值39万元的课,把它看完,你一定会有收获

第一课 一个男人在他妻子洗完澡后准备进浴室洗澡。这时,门铃响了。 妻子迅速用浴巾裹住自己冲到门口。 当她打开门时,邻居鲍勃站在那儿。 在她开口前,鲍勃说,“你如果把浴巾拿掉,我给你800美元。” 想了一会儿,这个女人拿掉浴巾赤裸地站在鲍勃面前。几秒钟后,鲍勃递给她800美元然后离开了。 女人重新裹好浴巾回到屋里。 当她踏进浴室时,丈夫问她,“是谁呀?” “是邻居鲍勃。”她回答。 “哦,”丈夫说,“他有没有提到还欠我800美元?” 故事寓意: 及时与同舟共济的股东分享重要信息,将会避免不必要的曝光。 第二课 一个销售员、一个办事员和他们的经理步行去午餐时发现了一盏古代油灯。 他们摩擦油灯,一个精灵跳了出来。 精灵说:“我能满足你们每人一个愿望。” “我先!我先!”办事员说,“我想去巴哈马群岛,开着快艇,与世隔绝。” 倏!她飞走了。 “该我了!该我了!”销售员说,“我想去夏威夷,躺在沙滩上,有私人女按摩师,免费续杯的冰镇果汁朗姆酒,还有一生中的最爱。” 倏!他飞走了。 “OK, 该你了。”精灵对经理说。 经理回答:“我要那两个蠢货午饭后马上回来工作!” 故事寓意: 永远让你的老板开口先。 第三课 一只鹰坐在高高的树上休息,无所事事。 一只小兔子看见鹰并且问它,“我能象你一样坐着什么都不干吗?” 鹰回答:“行啊,为啥不行。” 于是,兔子坐在鹰下面的地上休息。突然,一只狐狸出现了,它扑到兔子身上把它吃掉了。 故事寓意: 要想坐着无所事事,你必须坐在非常、非常高的位置。 第四课 一只小鸟飞去南方过冬。天实在太冷了。它冻僵了,掉在一片田野上。 它躺在那儿时,一头母牛走过来在它身上拉了一堆屎。 冻僵的小鸟躺在粪堆里,开始感觉到了温暖。 牛粪确实使它暖和过来了。 它躺在温暖的牛粪中,异常高兴,并开始唱起歌来。 一只过路的猫听到鸟叫赶过来看个究竟。 顺着声音,它发现了牛粪下的小鸟,并迅速把它拖出来吃掉了。 故事寓意: (1) 并不是每个在你身上拉屎的都是你的敌人。 (2) 并不是每个把你拖出粪堆的都是你的朋友。 (3) 当你深陷粪堆中的时候,最好闭上你的鸟嘴 1)学会 沉默 有时候,你被人误解,你不想争辩,所以选择沉默。本来就不是所有的人都得了解你,因此你认为不必对全世界喊话。却也有时候,你被最爱的人误解,你难过到不想争辩,也只有选择沉默。全世界都可以不懂你,但他应该懂,若他竟然不能懂,还有什么话可说?生命中往往有连舒伯特都无言以对的时刻,毕竟不是所有的是非都能条列清楚,甚至可能根本没有真正的是与非。那么,不想说话,就不说吧,在多说无益的时候,也许沉默就是最好的解释。 (2)至少 平静 在你跌入人生谷底的时候,你身旁所有的人都告诉你:要坚强,而且要快乐。坚强是绝对需要的,但是快乐?在这种情形下,恐怕是太为难你了。毕竟,谁能在跌得头破血流的时候还觉得高兴?但是至少可以做到平静。平静地看待这件事,平静地把其他该处理的事处理好。平静,没有快乐,也没有不快乐。 (3)学会弯腰 这会是我意外的收获 和别人发生意见上的纷歧,甚造成言语上的冲突,所以你闷闷不乐,因为你觉得都是别人恶意。别再耿耿于怀了,回家去擦地板吧。拎一块抹布,弯下腰,双膝着地,把你面前这张地板的每个角落来回擦拭干净。然后重新省思自己在那场冲突,所说过的每一句话。现在,你发现自己其实也有不对的地方了,是不是?你渐渐心平气和了,是不是?有时候你必须学习弯腰,因为这个动作可以让你谦卑。劳动身体的同时,你也擦亮了自己的心绪。而且,你还拥有了一张光洁的地板呢。这是你的第二个收获。 (4)不要想 如果 当初 你说,人生是一条有无限多岔口的长路,永远在不停地做选择。如果只是选择吃炒面或炒饭,影响似乎不大,但选择读什么科系、做什么工作、结婚或不结婚、要不要有孩子,每一个选择都影响深远,而不同的选择也必定造就完全不一样的人生。你又说,生命中不可承受之情,就在于人生没有重来的机会啊。如果当初如何如何,现在就不会怎样怎样…这种充满怅然的喃喃自语,还是别再多说了吧。每一个岔口的选择其实没有真正的好与坏,只要把人生看成是自己。独一无二的创作,就不会频频回首如果当初做了不一样的选择。 (5)努力吧 不管成功与否 至少曾经美丽 漫步林间,你看见一株藤蔓附着树干,柔软与坚实相互交缠,你感动于这静美的一幕。让幸福与归属就此驻足吧。你想。不知未来会有怎样一番风雨摧折?也许藤将断、树会倒,也许天会荒,地将老。你又想。那么,请时光停格在此刻吧。停格即是永恒。永恒里若有这静美的一刻,未来可能遭遇的种种劫难,便已得到了安慰与报偿。 (6)保持单纯 因为思虑过多,所以你常常把你的人生复杂化了。明明是活在现在,你却总是念念不忘着过去,又忧心忡忡着未来;坚持携带着过去、未来与现在同行,你的人生当然只有一片拖泥带水。而单纯是一种恩宠状态。单纯地以皮肤感受天气的变化,单纯地以鼻腔品尝雨后的青草香,单纯地以眼睛统摄远山近景如一幅画。单纯地活在当下。而当下其实无所谓是非真假。既然没有是非,就不必思虑;没有真假,就无须念念不忘又忧心忡忡。无是非真假,不就像在做梦一样了吗?是呀,就单纯地把你的人生当成梦境去执行吧。   (7)偶尔’俗气’… 吃多了健康食品,偶尔你也想啃一啃鸭舌头和盐酥鸡。看多了大师名剧,偶尔你也想瞄一瞄耳光摔不完眼泪掉不完的连续剧。听多了古典音乐,偶尔你也想唱一唱爱他一百年又恨他一万年的流行歌曲。你知道健康食品对健胃整肠有意义,大师名剧对培养气质有意义,古典音乐对提升性灵有意义,可是,偶尔你其实并不想让自己时时刻刻活得那么有意。人生不需要把自己绑得那么紧。偶尔的小小放纵,是道德的。灵气充满或许接近大人,但偶尔的俗气会更平易近人。 (8)控制情绪 别浪费了~ 今天的你,是不开心的你,因为有人在言语间刺伤了你。你不喜欢吵架,所以你离开;可是你只是离开了那,却没有离开被那人伤害的情境,因此你愈想愈生气。愈有气,你就愈没有力气去理会别的事情,许多更该用心去做去想去处理的事件,就在你漫天漫地的心烦意乱之中,被轻忽被漠视被省略了。因为,你只是一心一意地在生气。在情绪上做文章,这是对自己的浪费,而且是很坏的浪费。毕竟,生气也是要花力气的,而且生气一定伤元气。所以,聪明如你,别让情绪控制了你,当你又要生气之前,不妨轻声地提醒自己一句:“别浪费了。” (9)抓住最好的时机 绝不错过 你曾经买了一件很喜欢的衣裳却舍不得穿,郑重地供奉在衣柜里;许久之后,当你再看见它的时候,却发现它已经过时了。所以,你就这样与它错过了。你也曾经买了一块漂亮的蛋糕却舍不得吃,郑重地供奉在冰箱里;许久之后,当你再看见它的时候,却发现它已经过期了。所以,你也这样与它错过了。没有在最喜欢的时候上身的衣裳,没有在最可口的时候品尝的蛋糕,就像没有在最想做的时候去做的事情,都是遗憾。生命也有保存期限,想做的事该趁早去做。如果你只是把你的心愿郑重地供奉在心里,却未曾去实行,那么唯一的结果,就是与它错过,一如那件过时的衣裳,一如那块过期的蛋糕。 (10)偶尔的出离轨道 某次你搭火车打算到A地去,中途却忽然临时起意在B地下了车。也许是别致的地名吸引了你,也许是偶然一瞥的风景触动了你,总之,你就这样改变了本来预定的行程,然后经历了一场充满惊奇的意外旅行。A地是你原先的目标,B地却让你体会了小小的冒险。回忆起来,你说,那是一次令你难忘的出轨经验。生命中的许多时候不也如此?心无旁骛地奔赴唯一的目的,不过是履行了原本的行程而已;离开预设的轨道,你才有机会发现其他的风景。 (11)悄悄 悄悄地 回归平静.. 曾经有一段时间,你心情低落,甚至懒得拉开窗帘,看着窗外的阳光。因此你当然也忘了去看看,窗台上那一盆每天都需要喝水的玛格丽特。如此不知过了多久,总算有一天,你度过了心情的低潮,同时也想起了你的玛格丽特。天啊,可怜的花,她还活着吗?你战战兢兢地拉开窗帘,却见她迎风招摇,花颜可掬。原来在过去的这段日子里,你虽然忘了喂她喝水,老天却没忘了以雨露眷顾她呢。许多事物悄悄地在你的视线之外进行,而且悄悄地安排好了它们自己。天生万物,天养万物,一切其实无须担心……你只要做的就是做好自己,不留任何遗憾…足矣。 (365)

查看全文
html & html5, 转载

【转载】IE6 bug大全分享

1. 强制浏览器是用Web标准解析 HTML的写法 <!DOCTYPE HTML PUBLIC “-//W3C//DTD HTML 4.01//EN”“http://www.w3.org/TR/html4/strict.dtd”> 或者XHTML的写法 <!DOCTYPE html PUBLIC “-//W3C//DTD XHTML 1.0 Strict//EN”“http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd”> 2、CSS选择器区分IE6不支持子选择器;先针对IE6使用常规申明CSS选择器,然后再用子选择器针对IE7+及其他浏览器。 .content {color:red;} div>p .content {color:blue;} 3、PNG半透明图片的问题虽然可以通过JS等方式解决,但依然存在载入速度等问题,所以,这个在设计上能避免还是尽量避免为好。以达到网站最大优化。 4、IE6下的圆角IE6不支持CSS3的圆角属性,性价比最高的解决方法就是用图片圆角来替代,或者放弃IE6的圆角。 5、IE6背景闪烁如果你给链接、按钮用CSS sprites作为背景,你可能会发现在IE6下会有背景图闪烁的现象。造成这个的原因是由于IE6没有将背景图缓存,每次触发hover的时候都会重新加载,可以用JavaScript设置IE6缓存这些图片:document.execCommand(“BackgroundImageCache”,false,true); 6、最小高度IE6 不支持min-height属性,但它却认为height就是最小高度。解决方法:使用ie6不支持但其余浏览器支持的属性!important。 #container {min-height:200px; height:auto !important; height:200px;} 7、最大高度//直接使用ID来改变元素的最大高度 var container = document.getElementByIdx_x(‘container’); container.style.height = (container.scrollHeight > 199) ? “200px” : “auto”; //写成函数来运行 function setMaxHeight(elementId, height){var container = document.getElementByIdx_x(elementId); container.style.height = (container.scrollHeight > (height – 1)) ? height + “px” : “auto”;} //函数示例 setMaxHeight(‘container1′, 200); etMaxHeight(‘container2′, 500); 8、100% 高度在IE6下,如果要给元素定义100%高度,必须要明确定义它的父级元素的高度,如果你需要给元素定义满屏的高度,就得先给html和body定义 height:100%;。 9、最小宽度同max-height和max-width一样,IE6也不支持min-width。 //直接使用ID来改变元素的最小宽度 var container = document.getElementByIdx_x(‘container’); container.style.width = (container.clientWidth < width) ? “500px” : “auto”; //写成函数来运行 function setMinWidth(elementId, width){var container = document.getElementByIdx_x(elementId); container.style.width = (container.clientWidth < width) ? width + “px” : “auto”;} //函数示例 setMinWidth(‘container1′, 200); setMinWidth(‘container2′, 500); 10、最大宽度//直接使用ID来改变元素的最大宽度 var container = document.getElementByIdx_x(elementId); container.style.width = (container.clientWidth > (width – 1)) ? width + “px” : “auto”; //写成函数来运行 function setMaxWidth(elementId, width){var container = document.getElementByIdx_x(elementId); container.style.width = (container.clientWidth > (width – 1)) ? width + “px” : “auto”;} //函数示例 setMaxWidth(‘container1′, 200); setMaxWidth(‘container2′, 500); 11、双边距Bug当元素浮动时,IE6会错误的把浮动方向的margin值双倍计算。个人觉得较好解决方法是避免float和margin同时使用。 12、清除浮动如果你想用div(或其他容器)包裹一个浮动的元素,你会发现必须给div(容器)定义明确的height、width、overflow之中一个属性(除了auto值)才能将浮动元素严实地包裹。 #container {border:1px solid #333; overflow:auto; height:100%;} #floated1 {float:left; height:300px; width:200px; background:#00F;} #floated2 {float:right; height:400px; width:200px; background:#F0F;} 13、浮动层错位当内容超出外包容器定义的宽度时,在IE6中容器会忽视定义的width值,宽度会错误地随内容宽度增长而增长。浮动层错位问题在IE6下没有真正让人满意的解决方法,虽然可以使用overflow:hidden;或overflow:scroll;来修正,但hidden容易导致其他一些问题,scroll会破坏设计;JavaScript也没法很好地解决这个问题。所以建议是一定要在布局上避免这个问题发生,使用一个固定的布局或者控制好内容的宽度(给内层加width)。 14、躲猫猫bug在IE6和IE7下,躲猫猫bug是一个非常恼人的问题。一个撑破了容器的浮动元素,如果在他之后有不浮动的内容,并且有一些定义了:hover的链接,当鼠标移到那些链接上时,在IE6下就会触发躲猫猫。解决方法很简单:1.在(那个未浮动的)内容之后添加一个<span style=”clear: both;”> </span>2.触发包含了这些链接的容器的hasLayout,一个简单的方法就是给其定义height:1%; 15、绝对定位元素的1像素间距bugIE6下的这个错误是由于进位处理误差造成(IE7已修复),当绝对定位元素的父元素高或宽为奇数时,bottom和right会产生错误。唯一的解决办法就是给父元素定义明确的高宽值,但对于液态布局没有完美的解决方法。 16、3像素间距bug在IE6中,当文本(或无浮动元素)跟在一个浮动的元素之后,文本和这个浮动元素之间会多出3像素的间隔。给浮动层添加 display:inline 和 -3px 负值margin给中间的内容层定义 margin-right 以纠正-3px 17、IE下z-index的bug在IE浏览器中,定位元素的z-index层级是相对于各自的父级容器,所以会导致z-index出现错误的表现。解决方法是给其父级元素定义z- index,有些情况下还需要定义position:relative。 18、Overflow Bug在IE6/7中,overflow无法正确的隐藏有相对定位position:relative;的子元素。解决方法就是给外包容器.wrap加上 position:relative;。 19、横向列表宽度bug如果你使用float:left;把横向摆列,并且内包含的(或其他)触发了 hasLayout,在IE6下就会有错误的表现。解决方法很简单,只需要给定义同样的float:left;即可。 20、列表阶梯bug列表阶梯bug通常会在给<li>的子元素<a>使用float:left;时触发,我们本意是要做一个横向的列表(通常是导航栏),但IE却可能呈现出垂直的或者阶梯状。解决办法就是给<li>定义float:left;而非子元素<a>,或者给<li>定义display:inline;也可以解决。 21、垂直列表间隙bug当我们使用包含一个块级子元素时,IE6(IE7也有可能)会错误地给每条列表元素( )之间添加空隙。 解决方法:把<a>flaot并且清除float来解决这个问题;另外一个办法就是触发<a>的hasLayout(如定义高宽、使用zoom:1;);也可以给<li> 定义display:inline;来解决此问题;另外还有一个极有趣的方法,给包含的文本末尾添加一个空格。 22、IE6中的:hover在IE6中,除了(需要有href属性)才能触发:hover行为,这妨碍了我们实现许多鼠标触碰效果,但还是有一些法子是可以解决它的。最好是不要用:hover来实现重要的功能,仅仅只用它来强化效果。 23、IE6调整窗口大小的

查看全文
其他, 转载

【转载】常用PHP正则表达式

常用PHP正则表达式 获取所有图片网址preg_match_all(“/ src=(\”|\’){0,}(http:\/\/(.+?))(\”|\’|\s|>)/is”,$text,$img); 匹配中文字符的正则表达式: [\u4e00-\u9fa5] 匹配双字节字符(包括汉字在内):[^\x00-\xff] 匹配空行的正则表达式:\n[\s| ]*\r 匹配HTML标记的正则表达式:/.*|/ 匹配首尾空格的正则表达式:(^\s*)|(\s*$) 匹配Email地址的正则表达式:\w+([-+.]\w+)*@\w+([-.]\w+)*\.\w+([-.]\w+)* 匹配网址URL的正则表达式:^[a-zA-z]+://(\\w+(-\\w+)*)(\\.(\\w+(-\\w+)*))*(\\?\\S*)?$ 匹配帐号是否合法(字母开头,允许5-16字节,允许字母数字下划线):^[a-zA-Z][a-zA-Z0-9_]{4,15}$ 匹配国内电话号码:(\d{3}-|\d{4}-)?(\d{8}|\d{7})? 匹配腾讯QQ号:^[1-9]*[1-9][0-9]*$ “^\d+$”  //非负整数(正整数 + 0) “^[0-9]*[1-9][0-9]*$”  //正整数 “^((-\d+)|(0+))$”  //非正整数(负整数 + 0) “^-[0-9]*[1-9][0-9]*$”  //负整数 “^-?\d+$”    //整数 “^\d+(\.\d+)?$”  //非负浮点数(正浮点数 + 0) “^(([0-9]+\.[0-9]*[1-9][0-9]*)|([0-9]*[1-9][0-9]*\.[0-9]+)|([0-9]*[1-9][0-9]*))$”  //正浮点数 “^((-\d+(\.\d+)?)|(0+(\.0+)?))$”  //非正浮点数(负浮点数 + 0) “^(-(([0-9]+\.[0-9]*[1-9][0-9]*)|([0-9]*[1-9][0-9]*\.[0-9]+)|([0-9]*[1-9][0-9]*)))$”  //负浮点数 “^(-?\d+)(\.\d+)?$”  //浮点数 “^[A-Za-z]+$”  //由26个英文字母组成的字符串 “^[A-Z]+$”  //由26个英文字母的大写组成的字符串 “^[a-z]+$”  //由26个英文字母的小写组成的字符串 “^[A-Za-z0-9]+$”  //由数字和26个英文字母组成的字符串 “^\w+$”  //由数字、26个英文字母或者下划线组成的字符串 “^[\w-]+(\.[\w-]+)*@[\w-]+(\.[\w-]+)+$”    //email地址 “^[a-zA-z]+://(\w+(-\w+)*)(\.(\w+(-\w+)*))*(\?\S*)?$”  //url /^(d{2}|d{4})-((0([1-9]{1}))|(1[1|2]))-(([0-2]([1-9]{1}))|(3[0|1]))$/ // 年-月-日 /^((0([1-9]{1}))|(1[1|2]))/(([0-2]([1-9]{1}))|(3[0|1]))/(d{2}|d{4})$/ // 月/日/年 “^([w-.]+)@(([[0-9]{1,3}.[0-9]{1,3}.[0-9]{1,3}.)|(([w-]+.)+))([a-zA-Z]{2,4}|[0-9]{1,3})(]?)$” //Emil /^((\+?[0-9]{2,4}\-[0-9]{3,4}\-)|([0-9]{3,4}\-))?([0-9]{7,8})(\-[0-9]+)?$/ //电话号码 “^(d{1,2}|1dd|2[0-4]d|25[0-5]).(d{1,2}|1dd|2[0-4]d|25[0-5]).(d{1,2}|1dd|2[0-4]d|25[0-5]).(d{1,2}|1dd|2[0-4]d|25[0-5])$” //IP地址 元字符及其在正则表达式上下文中的行为: \ 将下一个字符标记为一个特殊字符、或一个原义字符、或一个后向引用、或一个八进制转义符。 ^ 匹配输入字符串的开始位置。如果设置了 RegExp 对象的Multiline 属性,^ 也匹配 ’\n’ 或 ’\r’ 之后的位置。 $ 匹配输入字符串的结束位置。如果设置了 RegExp 对象的Multiline 属性,$ 也匹配 ’\n’ 或 ’\r’ 之前的位置。 * 匹配前面的子表达式零次或多次。 + 匹配前面的子表达式一次或多次。+ 等价于 {1,}。 ? 匹配前面的子表达式零次或一次。? 等价于 {0,1}。 {n} n 是一个非负整数,匹配确定的n 次。 {n,} n 是一个非负整数,至少匹配n 次。 {n,m} m 和 n 均为非负整数,其中n .*1>|/ 匹配首尾空格的正则表达式:(^s*)|(s*$) 匹配Email地址的正则表达式:w+([-+.]w+)*@w+([-.]w+)*.w+([-.]w+)* 匹配网址URL的正则表达式:http://([w-]+.)+[w-]+(/[w- ./?%&=]*)? 利用正则表达式限制网页表单里的文本框输入内容: 用正则表达式限制只能输入中文:onkeyup=”value=value.replace(/[^u4E00-u9FA5]/g,”)” onbeforepaste=”clipboardData.setData(‘text’,clipboardData.getData(‘text’).replace(/[^u4E00-u9FA5]/g,”))” 用正则表达式限制只能输入全角字符: onkeyup=”value=value.replace(/[^uFF00-uFFFF]/g,”)” onbeforepaste=”clipboardData.setData(‘text’,clipboardData.getData(‘text’).replace(/[^uFF00-uFFFF]/g,”))” 用正则表达式限制只能输入数字:onkeyup=”value=value.replace(/[^d]/g,”) “onbeforepaste=”clipboardData.setData(‘text’,clipboardData.getData(‘text’).replace(/[^d]/g,”))” 用正则表达式限制只能输入数字和英文:onkeyup=”value=value.replace(/[W]/g,”) “onbeforepaste=”clipboardData.setData(‘text’,clipboardData.getData(‘text’).replace(/[^d]/g,”))” =========常用正则式 匹配中文字符的正则表达式: [\u4e00-\u9fa5] 匹配双字节字符(包括汉字在内):[^\x00-\xff] 匹配空行的正则表达式:\n[\s| ]*\r 匹配HTML标记的正则表达式:/.*|/ 匹配首尾空格的正则表达式:(^\s*)|(\s*$) 匹配IP地址的正则表达式:/(\d+)\.(\d+)\.(\d+)\.(\d+)/g // 匹配Email地址的正则表达式:\w+([-+.]\w+)*@\w+([-.]\w+)*\.\w+([-.]\w+)* 匹配网址URL的正则表达式:http://(/[\w-]+\.)+[\w-]+(/[\w- ./?%&=]*)? sql语句:^(select|drop|delete|create|update|insert).*$ 1、非负整数:^\d+$ 2、正整数:^[0-9]*[1-9][0-9]*$ 3、非正整数:^((-\d+)|(0+))$ 4、负整数:^-[0-9]*[1-9][0-9]*$ 5、整数:^-?\d+$ 6、非负浮点数:^\d+(\.\d+)?$ 7、正浮点数:^((0-9)+\.[0-9]*[1-9][0-9]*)|([0-9]*[1-9][0-9]*\.[0-9]+)|([0-9]*[1-9][0-9]*))$ 8、非正浮点数:^((-\d+\.\d+)?)|(0+(\.0+)?))$ 9、负浮点数:^(-((正浮点数正则式)))$ 10、英文字符串:^[A-Za-z]+$ 11、英文大写串:^[A-Z]+$ 12、英文小写串:^[a-z]+$ 13、英文字符数字串:^[A-Za-z0-9]+$ 14、英数字加下划线串:^\w+$ 15、E-mail地址:^[\w-]+(\.[\w-]+)*@[\w-]+(\.[\w-]+)+$ 16、URL:^[a-zA-Z]+://(\w+(-\w+)*)(\.(\w+(-\w+)*))*(\?\s*)?$ 或:^http:\/\/[A-Za-z0-9]+\.[A-Za-z0-9]+[\/=\?%\-&_~`@[\]\’:+!]*([^\”\”])*$ 17、邮政编码:^[1-9]\d{5}$ 18、中文:^[\u0391-\uFFE5]+$ 19、电话号码:^((\(\d{2,3}\))|(\d{3}\-))?(\(0\d{2,3}\)|0\d{2,3}-)?[1-9]\d{6,7}(\-\d{1,4})?$ 20、手机号码:^((\(\d{2,3}\))|(\d{3}\-))?13\d{9}$ 21、双字节字符(包括汉字在内):^\x00-\xff 22、匹配首尾空格:(^\s*)|(\s*$)(像vbscript那样的trim函数) 23、匹配HTML标记:.*| 24、匹配空行:\n[\s| ]*\r 25、提取信息中的网络链接:(h|H)(r|R)(e|E)(f|F) *= *(‘|”)?(\w|\\|\/|\.)+(‘|”| *|>)? 26、提取信息中的邮件地址:\w+([-+.]\w+)*@\w+([-.]\w+)*\.\w+([-.]\w+)* 27、提取信息中的图片链接:(s|S)(r|R)(c|C) *= *(‘|”)?(\w|\\|\/|\.)+(‘|”| *|>)? 28、提取信息中的IP地址:(\d+)\.(\d+)\.(\d+)\.(\d+) 29、提取信息中的中国手机号码:(86)*0*13\d{9} 30、提取信息中的中国固定电话号码:(\(\d{3,4}\)|\d{3,4}-|\s)?\d{8} 31、提取信息中的中国电话号码(包括移动和固定电话):(\(\d{3,4}\)|\d{3,4}-|\s)?\d{7,14} 32、提取信息中的中国邮政编码:[1-9]{1}(\d+){5} 33、提取信息中的浮点数(即小数):(-?\d*)\.?\d+ 34、提取信息中的任何数字 :(-?\d*)(\.\d+)? 35、IP:(\d+)\.(\d+)\.(\d+)\.(\d+) 36、电话区号:/^0\d{2,3}$/ 37、腾讯QQ号:^[1-9]*[1-9][0-9]*$ 38、帐号(字母开头,允许5-16字节,允许字母数字下划线):^[a-zA-Z][a-zA-Z0-9_]{4,15}$ 39、中文、英文、数字及下划线:^[\u4e00-\u9fa5_a-zA-Z0-9]+$ (389)

查看全文
Javascript, 转载

【转载】正则表达式匹配标点符号

正则表达式匹配标点符号 <?php:,./;’,。、‘:“《》?~!@#¥%……()”; preg_replace(“~(\s+|[\\pP])~i”,“-”,$value); ?> 面是实例,简单的说就是 [\\pP] 这几个字符串了,可以匹配任何全角或半角的标点符号,参考上面的例子可以得出结果。Unicode 编码并不只是为某个字符简单定义了一个编码,而且还将其进行了归类。 \pP 其中的小写 p 是 property 的意思,表示 Unicode 属性,用于 Unicode 正表达式的前缀。 大写 P 表示 Unicode 字符集七个字符属性之一:标点字符。 其他六个是 L:字母; M:标记符号(一般不会单独出现); Z:分隔符(比如空格、换行等); S:符号(比如数学符号、货币符号等); N:数字(比如阿拉伯数字、罗马数字等); C:其他字符 摘自:令狐葱@关注互联网 (506)

查看全文