Đây là mã Tôi hiện có:Razor Engine - Làm thế nào tôi có thể hiển thị các thẻ body khác nhau dựa trên các điều kiện khác nhau?
@{
if (Request.Browser.Browser == "IE") {
if (Request.Browser.MajorVersion == 7) { <body class="ie7"> }
if (Request.Browser.MajorVersion == 8) { <body class="ie8"> }
if (Request.Browser.MajorVersion == 9) { <body class="ie9"> }
if (Request.Browser.MajorVersion > 9) { <body> }
} else {
<body>
}
}
Đây là lỗi mà nó trả về khi trình duyệt cố gắng để làm cho nó:
Parser Error Message: Khối mã thiếu một kết thúc " } " ký tự. Đảm bảo bạn có ký tự "}" phù hợp cho tất cả các ký tự "01" "" trong khối này và không có ký tự "}" nào đang được hiểu là đánh dấu.
Cái quái gì? Tôi đã có thể làm điều này trong cú pháp tiêu chuẩn ASP.NET mẫu! Dưới đây là những gì trông giống như:
<% // Adaptation of paulirish.com/2008/conditional-stylesheets-vs-css-hacks-answer-neither/
if ((Request.Browser.Browser == "IE") && (Request.Browser.MajorVersion == 7)) { %><body class="ie7"><% } %>
<% if ((Request.Browser.Browser == "IE") && (Request.Browser.MajorVersion == 8)) { %><body class="ie8"><% } %>
<% if ((Request.Browser.Browser == "IE") && (Request.Browser.MajorVersion == 9)) { %><body class="ie9"><% } %>
<% if ((Request.Browser.Browser == "IE") && (Request.Browser.MajorVersion > 9)) { %><body><% } %>
<% if (Request.Browser.Browser != "IE") { %><body><% } %>
Nó cũng thực hiện điều này [HTML xác nhận tào lao] (http://joshuahayworth.com/wp-content/uploads/2011/10/razorEngineStackOverflowQuestion01.png) trong IDE, đó là gây phiền nhiễu. –
Tại sao bạn không sử dụng CSS bao gồm? http://css-tricks.com/132-how-to-create-an-ie-only-stylesheet/. Chỉ cần xác định một kiểu cho "body" trong mỗi script đó. – jgauffin
Kiểm tra nó ngay bây giờ! Cảm ơn các liên kết. –