2011-05-25 83 views
0

假設我有一個帶div的頁面和一個按鈕。當你點擊按鈕時,div應該放大。換句話說,如果這個div是100px,那麼當你縮放時,它應該變成200px。而這個div的所有孩子也應該增加一倍的大小。JavaScript/HTML/CSS:縮放

這樣做的最好方法是什麼?

我的理解是,有一個CSS zoom,但只在IE中 - 它不是任何CSS標準的一部分。

+0

據http://stackoverflow.com/questions/1156278/how-can-i-scale-an-entire-web-page-with -css,除了Firefox以外,所有主流瀏覽器都支持CSS'zoom'(儘管對Firefox 4並不確定)。 – 2011-05-25 20:07:44

回答

9

您應該使用CSS3的transform: scale()

參見:http://jsfiddle.net/Favaw/ - (我用的jQuery爲了方便,但它不是必需的)

.zoomedIn2x { 
    -moz-transform: scale(2); 
    -webkit-transform: scale(2); 
    -o-transform: scale(2); 
    -ms-transform: scale(2); 
    transform: scale(2); 

    -moz-transform-origin: 0 0; 
    -webkit-transform-origin: 0 0; 
    -o-transform-origin: 0 0; 
    -ms-transform-origin: 0 0; 
    transform-origin: 0 0; 
} 

如果您需要支持舊版本的IE比9,然後使用這個工具產生.zoomedIn2x

如果您想要更動態地執行此操作(例如其他級別的縮放),請改爲使用cssSandpaper