51

由于在 asp.net 中没有用户控件的标题部分,因此用户控件无法了解样式表文件。因此,Visual Studio 无法识别用户控件中的 css 类并产生警告。我怎样才能让用户控件知道它将与一个 css 类相关,所以如果它警告我一个不存在的 css 类,这意味着该类真的不存在?

编辑:或者我应该采用不同的设计,例如将 css 类公开为 GridView 的“HeaderStyle-CssClass”等属性?

4

4 回答 4

65

这是我所做的:

<link rel="Stylesheet" type="text/css" href="Stylesheet.css" id="style" runat="server" visible="false" />

它使 Visual Studio 误以为您已经向页面添加了样式表,但它没有被呈现。


这是使用多个引用执行此操作的更简洁的方法;

<% if (false) { %>
    <link rel="Stylesheet" type="text/css" href="Stylesheet.css" />
    <script type="text/javascript" src="js/jquery-1.2.6.js" />
<% } %>

从 Phil Haack的这篇博文中可以看出。

于 2008-08-29T15:52:43.770 回答
3

在您的用户控件上添加样式并在其中导入 css。

 <%@ Control Language="vb" AutoEventWireup="false" CodeBehind="WCReportCalendar.ascx.vb"
Inherits="Intra.WCReportCalender" %>
 <style type='text/css'>    
      @import url("path of file.css");
       // This is how i used jqueryui css
      @import url("http://code.jquery.com/ui/1.10.0/themes/base/jquery-ui.css");               

 </style>

 your html 
于 2013-02-08T14:42:52.563 回答
0

如果您正在创建复合用户控件,那么您可以在子控件上设置CSSClass属性。

如果没有,那么您需要公开Style类型的属性,或者(就像我经常做的那样)在呈现类型上应用 CSS 的字符串属性(即,在呈现时获取它们的属性并在 HTML 标记中添加样式属性) .

于 2008-08-29T15:03:37.757 回答
-4

您可以CSS直接在userControl.

使用这个UserControl

 <head>
    <title></title> 
    <style type="text/css">
      .wrapper {
          margin: 0 auto -142px; 
         /* the bottom margin is the negative value of the footer's height */ 
       }
    </style>
 </head>

这将起作用。

于 2012-03-31T05:58:10.980 回答