@RenderBody() 与画布
Posted
技术标签:
【中文标题】@RenderBody() 与画布【英文标题】:@RenderBody() with canvas 【发布时间】:2015-06-24 13:14:31 【问题描述】:我在_Layout.cshtml
上加载了一个画布
当我从“索引”页面浏览到“关于”或“联系人”时,<canvas>
正在显示,但页面内容缺失。
Index
页面将在<body>
标记下加载div
,但About
页面缺少内容。
我假设 @RenderBody
不在适当的 z-index 中,或者没有像我的索引页面那样显示在 <canvas>
之上。
<canvas id="bgCanvas"></canvas>
<script src="~/Scripts/starLayout.js"></script>
<div class="container body-content">
@RenderBody()
<hr />
<footer>
<p>© @DateTime.Now</p>
</footer>
</div>
编辑2:
在查看源代码下显示
<canvas id="bgCanvas"></canvas>
<script src="/Scripts/starLayout.js"></script>
<div class="container body-content">
<h2>About.</h2>
<h3>Your application description page.</h3>
<div>
<p>Use this area to provide additional information.</p>
</div>
<hr />
<footer>
<p>© 4/17/2015 11:33:17 AM - JTR</p>
</footer>
</div>
但是我仍然看不到内容,所以我相信它在画布下面。这很奇怪,因为它位于 index.cshtml
的画布上
【问题讨论】:
starLayout.js
在做什么?也许它破坏了页面渲染。此外,_Layout.cshtml
看起来不像一个完整的 HTML 文档。
对不起,我不太清楚。您是说@RenderBody()
是在注入内容,但不是您期望的内容,还是内容不存在?当您说“页面内容丢失”时,您的意思是它不在 DOM 中(当您查看源代码时不存在)或者它不可见?
哦,好点。当我查看源代码时它就在那里不可见。
是的,我认为这只是一个 html / css 问题。我相信所有<canvas>
元素都应该指定height
和width
。因此默认值可能会覆盖您的其他元素。
【参考方案1】:
这是您的答案:w3c canvas。很快,您必须为画布元素提供宽度和高度属性。
记得将负责“绘图”的 *.js 文件/代码放在画布元素之后。
您能否提供 css 代码,所以我将编辑此答案以更具体?
【讨论】:
以上是关于@RenderBody() 与画布的主要内容,如果未能解决你的问题,请参考以下文章
如何将从输入字段获取的画布名称与Javascript中的画布合并?