Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/439.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 画布-高度自动调整-Sketch.js_Javascript_Css_Html_Canvas - Fatal编程技术网

Javascript 画布-高度自动调整-Sketch.js

Javascript 画布-高度自动调整-Sketch.js,javascript,css,html,canvas,Javascript,Css,Html,Canvas,我正在使用sketch.js为移动应用程序创建一个简单的草图板。它应该通过将宽度和高度设置为100%来填充整个屏幕,但在我点击“草图板”后,它会将自身调整为较小的尺寸。在这种情况下,如何将画布设置为全屏?这是我的例子 CSS的属性不会将高度表示为窗口的百分比,这是您所期望的。MDN声明: 百分比是根据生成的长方体包含块的高度计算的。如果未明确指定包含块的高度(即,它取决于内容高度),并且该元素未绝对定位,则该值将计算为自动 小提琴中没有包含块,并且它不是绝对定位的,因此它默认为auto。但您可

我正在使用sketch.js为移动应用程序创建一个简单的草图板。它应该通过将宽度和高度设置为100%来填充整个屏幕,但在我点击“草图板”后,它会将自身调整为较小的尺寸。在这种情况下,如何将画布设置为全屏?这是我的例子


CSS的属性不会将高度表示为窗口的百分比,这是您所期望的。MDN声明:

百分比是根据生成的长方体包含块的高度计算的。如果未明确指定包含块的高度(即,它取决于内容高度),并且该元素未绝对定位,则该值将计算为自动

小提琴中没有包含块,并且它不是绝对定位的,因此它默认为
auto
。但您可以使用JS将
的高度设置为浏览器窗口,如下所示:

// Set the <canvas> height to the window's height
$('canvas').css('height', $(window).height());
//将高度设置为窗口的高度
$('canvas').css('height',$(window.height());

您可能需要根据实际页面的外观对此进行一些调整。(JSFIDLE正在添加一些填充物,这会使它失效。)

感谢您的帮助。正如你在这里看到的那样,它确实可以工作,但是草图完全关闭了。您是否建议您做其他事情或使用不同的js草图库,或者您是否可以想到其他修复方法?
sketch.js
似乎依赖于
height
HTML属性,而不是CSS属性。删除CSS
height
属性,然后运行此JS:
$('canvas').attr('height',$(window.height().toString()+'px')$(#mysketch').sketch()取而代之。没问题。如果您认为这是您问题的答案,请将其标记为已接受的答案,以便未来的访问者可以找到它。事实上,“未来访问者”发现了它,并且发现它非常有用+1.
// Set the <canvas> height to the window's height
$('canvas').css('height', $(window).height());