2011-09-24 59 views
1

我想爲我的HTML遊戲製作可移動的世界,所以我將1600x1200畫布放入我的800x600 div元素中,並使用左側和頂部移動世界。我預計div會限制畫布的大小,但是我的畫布會覆蓋我的div的邊框。 div不伸展,canvas獨立於div。限制(裝夾)畫布尺寸

我試過!重要的,最大寬度和最大高度,不同的顯示器,沒有什麼作品。使用CSS的寬度和高度只是縮放畫布。我也嘗試將我的畫布作爲外部對象放入SVG中,但出現錯誤「getContext不是函數」。

那麼,我怎樣才能限制我的畫布的大小?

回答

0

div是要擴大你的canvas的大小,除非div在其CSS overflow: hidden;集。子元素大於父元素,並且您沒有嚴格地告訴瀏覽器限制父元素的大小。

max-widthmax-height屬性不會幫助你,因爲你沒有在div內放置「可打包」內容。如果您將div中的文字設置爲max-width,則該值將受到尊重。如果你放置一個尺寸不變的元素,如imagecanvas元素,瀏覽器不能動態地將它包裝起來,就像一堆漂浮的divs或一些文本一樣。在這種情況下,您有overflow,需要以不同方式處理。

你可以實現你通過與position和/或用於canvas元素margin屬性玩找什麼,一旦你設置父div隱藏溢出。