縮小我有越來越畫布元素的所需佈局頁面上的問題。我正在使用表格來進行佈局。所需的佈局是在左側有一個畫布,它是全高,另外兩個畫布在右側,一個在另一個的頂部,左側畫布的組合高度。兩個右側的畫布具有固定的寬度和高度。當瀏覽器窗口調整大小時,我希望左側畫布調整大小以佔用所有可用寬度(達到右側畫布的寬度)。我使用window.onresize事件來捕獲調整大小事件並調整左側畫布的大小。不能在<table>得到<canvas>寬度
我看到的問題是,當瀏覽器窗口寬度變大左卡瓦酒將正確調整,但無法在瀏覽器窗口的寬度變小萎縮!代碼如下。是什麼賦予了?畫布中是否存在不允許靈活調整大小的內容?
...我已經尋找一個答案,這個問題沒有運氣。希望這裏有人已經征服了這個,可以幫我一把。
下面是示例代碼:
<!DOCTYPE html>
<html>
<head>
<title>SO Example</title>
<script type="text/javascript">
window.onload = function()
{
var canvas = document.getElementById("wf1");
canvas.width = canvas.parentNode.clientWidth;
canvas.height = canvas.parentNode.clientHeight;
}
window.onresize = function()
{
var canvas = document.getElementById("wf1");
canvas.width = canvas.parentNode.clientWidth;
canvas.height = canvas.parentNode.clientHeight;
}
</script>
<style type="text/css">
table
{
border-collapse: collapse;
background-color: #ccc;
}
tr, td
{
padding: 0;
line-height: 0;
width: 100%;
}
</style>
</head>
<body>
<table>
<tr class="slot">
<td>
<canvas id="wf1" class="wfblock" style="background-color:red;"></canvas>
</td>
<td>
<canvas id="pm1" style="background-color: green; width: 200px; height: 84px;"></canvas>
<canvas id="pm2" style="background-color: blue; width: 200px; height: 84px;"></canvas>
</td>
</tr>
</table>
</body>
</html>
您是否需要使用表格?我強烈建議單獨使用css來執行此操作 – Neil
尼爾,我在CSS中遇到的問題是,當它更改畫布的大小時,它不僅僅更改畫布大小,還會更改畫布所在的視口,使其變形畫布。我需要畫布來真正改變尺寸。 –
請注意,我描述的效果會顯示瀏覽器水平滾動條。我不想要這個。 –