在 ASP.NET MVC 3 剃须刀视图中,我有代码:
<!DOCTYPE html>
<html>
<head>
<style type="text/css">
@media print
{
table { page-break-inside:auto; width: 100%; }
tr { page-break-inside:avoid; page-break-after:auto }
thead { display:table-header-group }
tfoot { display:table-footer-group }
}
</style>
</head>
<body>
<table>
但是我得到了错误:
The name 'media' does not exist in the current context.
谢谢。
@
是 Razor 中的保留字符。 但是您可以使用@@
来转义它:
@@media print
在剃刀视图中,@
符号是代码前面的魔术字符。
在您的情况下,请使用 2 个@@
符号;否则 razor 会认为这是一个代码/表达式块。
例如:
@@media print.
或者,您可以使用Html.Raw
方法:
@Html.Raw("@")media print
一个示例用法是打印 Twitter 句柄时,其中包含@
字符。
这里有一个很好的msdn链接,可以了解更多关于razor
语法的信息,这里有一个来自Phil Hack的链接。