偷偷摘套内射激情视频,久久精品99国产国产精,中文字幕无线乱码人妻,中文在线中文a,性爽19p

Javascript解決常見瀏覽器兼容問題

開發(fā) 前端
現(xiàn)代瀏覽器有很好的CSS支持-這無疑足夠好讓你使用CSS來控制布局和版面設(shè)計,但是有時候,某些網(wǎng)頁元素在不同的瀏覽器會出現(xiàn)不同,這里向大家描述一下Javascript解決常見瀏覽器兼容問題方案。

本文向大家簡單介紹一下Javascript解決常見瀏覽器兼容問題方案,通過實例向大家講解一下,主要包括自動匹配高度,IE6PNG透明支持和用Javascript改變class等十二個問題,相信本文介紹一定會讓你有所收獲。

Javascript解決常見瀏覽器兼容問題方案

我們提倡盡可能使用CSS,而且我們常常能做到這一點?,F(xiàn)代瀏覽器有很好的CSS支持-這無疑足夠好讓你使用CSS來控制布局和版面設(shè)計。但是有時候,某些網(wǎng)頁元素在不同的瀏覽器會出現(xiàn)不同。

  如果你不知道原因,不要過于擔(dān)心,請研究CSS規(guī)則并查看這篇文章:使用CSS來修正一切:20+常見錯誤和修復(fù)。

  如果這些也無效,您可以通過下面列出的12個javascript解決方案修復(fù)它,這樣您的網(wǎng)頁看起來就能跨越所有瀏覽器了!

  在本文中,我們會揭開你在開發(fā)web應(yīng)用是可能會遇到的12個最常見的CSS問題的javascript解決方案。

1.自動匹配高度

自動匹配高度

  自從我們拋棄了基于Table的頁面布局后,創(chuàng)建同等高度欄目或內(nèi)容盒子的視覺效果已然是一個挑戰(zhàn)。

1.1用jQuery設(shè)置匹配高度

  這個jQuery插件在同一個容器里“平衡”盒子的高度并創(chuàng)造一個簡介的網(wǎng)格——幾乎從可用性和性能的角度使用簡單的JavaScript替代:equalHeights()函數(shù)測定一個容器里的所有同級元素同容器的高度,然后設(shè)置每個元素的***高度為***的元素的高度。

如何工作

  equalHeights()通過循環(huán)測定指定元素的***級別的子節(jié)點,然后設(shè)置他們的最小高度值為***的元素的高度。

1.2用jQuery匹配欄目高

jQuery的另一個可以使盒子的高度相等的插件

  1. $(“#col1,#col2″).equalizeCols();  
  2.  

將如你所想的那樣匹配高度

  1. $(“#col1,#col2″).equalizeCols(“p,p”);  
  2.  


匹配這兩卷,并在#col1或#col2(短的那個)里的P標(biāo)簽后面添加空白.#p#

2.IE6PNG透明支持  

IE6以下的版本不支持png透明。使用hack,IE5.5和6也已經(jīng)可以支持,但hack并不理想的且難以使用。讓我們來看看我們能做些什么來支持IE6用戶,同時為網(wǎng)站的大多數(shù)訪客帶來***的透明效果。

2.1強制IE6支持透明

  IE7的是一個DeanEdwards建立的JavaScript庫,以強迫MSIE(IE6,IE5)表現(xiàn)的像一個兼容標(biāo)準(zhǔn)的瀏覽器。它修復(fù)許多CSS問題并使透明PNG在IE6和IE5下正常工作,它還允許高級的CSS選擇器。

2.2.改良iFixPng

改良iFixPng

 

  修正IE6及以下的PNG圖片的問題,IMG標(biāo)簽和CSS背景圖片都可以。這個插件是對原始iFixPng插件的一種改進(jìn)。特點包括:圖像或有背景圖片的標(biāo)簽,現(xiàn)在支持background-position,其中包括IE瀏覽器的絕對定位的修正。(bottom:-1px||bottom:0px)

3.用Javascript改變class

用Javascript改變class

  這是一個方便的JavaScript函數(shù),可以在當(dāng)前的文件的任何元素的class由oldClass改為newClass。這是特別有用的快速的利用CSS而不是用編碼改變風(fēng)格。

  1. functionchangeClass(oldClass,newClass){  
  2. varelements=document.getElementsByTagName(“*”);  
  3. for(i=0;i<elements.length;i++){  
  4. if(elements[i].className==oldClass)elements[i].className=newClass;  
  5. }  
  6. }  

4.CSS瀏覽器選擇器  

如果您可以只需鍵入一個特殊選擇器,在這里您可以寫一些JavaScript,設(shè)置一個Class在基于當(dāng)前的瀏覽器兼容的名字的標(biāo)簽會怎么樣?

CSS瀏覽器選擇器 

4.1CSSBrowser

  這是一個非常小的javascript只有一行,而且不到1kb,它允許CSS選擇器。它讓您可以為每個操作系統(tǒng)和每個瀏覽器寫具體的CSS代碼。你可以寫一些JavaScript,設(shè)置Class的名字,也就是說,內(nèi)容根據(jù)當(dāng)前的瀏覽器。

jQuery瀏覽器選擇器

  這里有另外一個基于jQuery的非常簡單的處理瀏覽器選擇器的方法,你需要做的只是加載jQuery庫文件,并添加下面的一塊兒代碼。

  1. $(document).ready(function(){  
  2. $(‘html’).addClass($.browser);  
  3. });  
  4.  

  現(xiàn)在你可以準(zhǔn)備你的樣式,如.msie,.mozilla,.opera,.safari或其它目標(biāo)瀏覽器兼容。#p#

5.最小/***高度/寬度支持  

針對CSSmin-width,min-height,max-width,max-height,border-*-width,margin,和padding屬性,這里有一些很好的jQuery修正。

5.1jQMinMax

  這是一個為沒有原聲的支持min-width,max-width,min-height和max-height的地方添加支持的jQuery插件。

5.2JSizes  

這個小jQuery插件為CSSmin-width,min-height,max-width,max-height,border-*-width,margin,和padding屬性添加支持。特別是他提供一種方法來確定一個元素在那里可見。由于所有的型號的方法返回數(shù)值,所以這些也可以安全的使用在嚴(yán)格的DOM元素方面。

  1. jQuery(function($){  
  2. varmyDiv=$(‘#myDiv’);  
  3.  
  4. //setmargin-topto100pxandmargin-bottomto10em  
  5. myDiv.margin({top:100,bottom:‘10em’});  
  6.  
  7. //displaysthesizeofthetopborderinpixels  
  8. alert(myDiv.border().top);  
  9.  
  10. //displaystrueiftheelementisvisible,falseotherwise  
  11. alert(myDiv.isVisible());  
  12.  
  13. //setpadding-rightto10pxandmargin-  
  14. leftto15pxusingchaining  
  15. myDiv.padding({right:10}).margin({left:15});  
  16. });  
  17.  

 6.元素垂直/水平居中  

你可能之前遇到過這個問題:水平或垂直居中某個元素。垂直居中在CSS里面相當(dāng)麻煩,特別是你想支持所有主流瀏覽器。

元素垂直/水平居中

6.1Centerelementplugin

  這個插件可以使頁面中的所有元素居中,垂直和水平居中采用css負(fù)margin的方法。

  1. $(“element”).center();//verticalandhorizontal  
  2. $(“element”).center({  
  3. horizontal:false//onlyvertical  
  4. });  
  5.  

6.2我是怎么把一個元素垂直居中的?

  在這個視頻教程里,JeffreyJordanWay將為你展示如何使用jQuery的力量結(jié)合CSS在你的瀏覽器里面使一個圖片垂直居中.#p#

7.在IE里使用Q標(biāo)簽  

人們期望使用的Q標(biāo)簽而不是blockquote標(biāo)簽來顯示引號。然而IE/Win不支持Q標(biāo)簽,因為這一點,大部分網(wǎng)站的作者選擇不使用Q標(biāo)簽。

7.1QinIE

  當(dāng)你在你的文件的頭部添加這個腳本在IE瀏覽器里自動掃描的網(wǎng)頁Q的標(biāo)記,并正確的顯示它們(包括嵌套引用)。當(dāng)(如果)IE瀏覽器將來支持Q標(biāo)簽,這個插件將會添加瀏覽器版本檢查。

8.增加點擊目標(biāo)的大小和獲得更多的響應(yīng)轉(zhuǎn)換

增加點擊目標(biāo)的大小和獲得更多的響應(yīng)轉(zhuǎn)換

  通過把你的所有內(nèi)容放到一個可點擊的標(biāo)簽來和單調(diào)的“readmore…”鏈接說拜拜吧。

9.Lazyloader  

Lazyloader是一個jQuery。它可以延遲加載頁面里面的圖片.在用戶瀏覽視界(頁面中可見部分)以外的圖片之前,它將不會被加載。這和imagepreloading的作用正好相反.

10.bgiframe

輕松的解決IE下的z-index的問題。

bgiframe

11.ieFixButtons  

ieFixButtons是一個修正IE6和7的<button>標(biāo)簽的bug的jquery插件。

12.溢出(overflow)修正  

修正ie下的水平溢出。IE在溢出的元素里面顯示一個滾動條,特別是如果元素里面只有一行,滾動條就會遮住這行內(nèi)容。這個插件通過修改padding來修正這個問題。

溢出(overflow)修正

【編輯推薦】

  1. JavaScript巧解IE6至IE8兼容問題
  2. JavaScript代碼輕松實現(xiàn)DIV圓角
  3. 網(wǎng)頁排版中IE6,IE7,F(xiàn)irefox瀏覽器兼容性寫法
  4. CSS屬性display:inline-block使用揭秘
  5. Firefox、IE7、IE6瀏覽器兼容問題概念解析

 

 

責(zé)任編輯:佚名 來源: bingo929.com
相關(guān)推薦

2010-08-11 13:35:10

JavaScriptCSS

2010-10-09 13:07:51

Javascript兼容

2010-09-16 13:48:15

CSS Hack

2011-04-12 16:51:29

Javascript兼容性

2010-08-30 15:40:31

CSS瀏覽器兼容

2024-12-25 15:59:04

2010-08-11 15:17:51

瀏覽器兼容性問題

2013-01-21 15:33:30

瀏覽器

2016-09-18 20:48:21

蘋果safari瀏覽器

2010-09-15 09:12:03

JavaScript瀏覽器兼容

2009-02-20 15:24:00

IE8火狐瀏覽器

2010-08-18 14:21:48

FirefoxIE7IE6

2010-08-17 14:22:47

JavaScript兼容性

2010-08-17 16:27:52

IE6IE7IE8

2017-01-05 09:07:25

JavaScript瀏覽器驅(qū)動

2011-12-01 09:48:14

Win7處理器

2009-04-02 18:06:27

Vmwareesx虛擬化

2022-01-25 08:52:26

微軟Edge瀏覽器

2009-12-23 08:49:21

Windows 7UAC兼容性

2010-10-08 15:00:08

FirefoxJavaScript兼
點贊
收藏

51CTO技術(shù)棧公眾號