2012-08-02 63 views
0

我已经为一个画廊编写了一个.net用户控件,在我的Web应用程序中运行得很好,如果在我的页面上有一个画廊。问题是当我使用XHTML 1.0 Strict去验证我的页面时,我在这里得到的文档类型不允许元素“链接”。W3C验证包含CSS的UserControl

我已经做了一些研究,这是因为我有一个嵌入在usercontrol中的样式表,并且从主页面的主体中调用,所以它不验证。我可以将样式表移出usercontrol并放入masterfile中,但我不需要在每个页面上加载样式表。做这件事的最好方法是什么 - 我希望在usercontrol中包含样式表,所以它很容易'管理'。

任何建议将是伟大的。还想到,我是否需要从usercontrol中删除javascript?

这是问题

<%@ Control Language="C#" Debug="true" AutoEventWireup="true" CodeFile="Gallery.ascx.cs" Inherits="Gallery" %> 

<%@ Register Assembly="System.Web.Extensions, Version=3.5.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35" 
Namespace="System.Web.UI.WebControls" TagPrefix="asp" %> 

<link ID="FancyboxCSS" type="text/css" rel="stylesheet" href="" runat="server" /> 
<link ID="FancyboxButtonsCSS" type="text/css" rel="stylesheet" href="" runat="server" /> 

<script type="text/javascript"> 

$(document).ready(function() { 
    $(".fancybox").fancybox({ 
     maxWidth: 800, 
     maxHeight: 800, 
     fitToView: true, 
     aspectRatio: true, 
     openEffect: 'fade', 
     closeEffect: 'fade', 
     nextEffect: 'fade', 
     prevEffect: 'fade', 

     helpers: { 
      title: { 
       type: 'outside' 
      }, 
      overlay: { 
       opacity: 0.8, 
       css: { 
        'background-color': '#000' 
       } 
      }, 
      buttons: {} 
     } 
    }); 
}); 

<div id="gallery" runat="server"> 
//images here 
</div> 

回答

0

一个标记验证处理标记语言文档,比如HTML或XML的用户控制和文档必须是完整的。例如,HTML文档必须最少包含一个title元素。而不应该包含像<%@之类的东西:它们不是HTML文档的一部分,但是指示生成HTML的软件。

所以,如果你想验证,你需要提交一个完整的,生成的HTML文档。

+0

嗨尤卡,感谢您的回复,我将编辑我的HTML代码的母版是生产的问题,我只是包括寻找同样的东西用户控件,因为我认为它可能有所帮助。 – JK36 2012-08-02 12:12:27