如何将 CSS 包含到 IntraWeb 项目中?

Posted

技术标签:

【中文标题】如何将 CSS 包含到 IntraWeb 项目中?【英文标题】:How to include CSS into a IntraWeb Project? 【发布时间】:2014-09-23 23:59:57 【问题描述】:

说明:

我通过“IntraWeb 应用程序向导”创建了一个新的独立 IntraWeb 应用程序,我在里面放置了一些带有事件的按钮和编辑,所有的东西都运行良好,但是按钮和编辑需要一些样式,因为它们很丑。

目标:

我想使用 CSS 对它们进行样式化以覆盖默认样式并添加一些新样式。

问题:

我找不到如何将 CSS 文件包含到我的项目中,以便以后在我的 TIWFormStyleSheet 属性中使用它。

我的尝试:

我尝试将 css 文件手动放入“.exe 的同一文件夹”的调试文件夹中,我也尝试单击文件 -> 新建 -> 其他 -> CSS 样式表,然后粘贴 css 代码并将其保存到Debug 文件夹“与 .exe 相同的文件夹”。

我需要解决这个问题,否则我将无法使用 IntraWeb App。

【问题讨论】:

我不确定我是否理解这个问题。创建并保存 CSS 文件后,只需将 TIWForm.StyleSheet.FileName 设置为该文件的名称即可。 我确实尝试在对象检查器上将我的 TIWForm 的 FileName 属性设置为我的 css 文件名,但它不起作用 设置文件名确实有效,设置 URL 也是如此。您必须实际应用样式。在 Demos for Intraweb 中有一个使用自定义 .CSS 的示例。我没有为 XE6 安装 IW,但在旧版本中它位于公共文档文件夹中(Win 7 在 C:\Users\Public\Documents\RAD Studio\5.0\Demos\Intraweb\Win32 中有它);有一个名为Features 的文件夹。如果您在该文件夹中打开项目并四处寻找,您会看到它使用名为 azweb.css 的自定义 .CSS 来设置某些内容的样式。 (而且没有任何细节说“不工作”是没有意义的。) 对不起“不工作”我得到的问题是找不到文件,我使用的是独立的,可能 css 文件没有部署到服务器中,但我会尝试在此处查看示例 这是一个文件夹问题,我无法从这里看到您的目录结构。您放置文件的文件夹必须可供 Web 服务器(或您的应用程序)使用。无论您的 Web 根目录是什么 +/files/css,是否有一个文件夹?我不知道您将什么配置为 Web 根文件夹。现在这不是 Intraweb 问题。这是一个配置问题,我无能为力,因为我无法从这里看到您的配置。对不起。 【参考方案1】:

默认情况下,独立 IntraWeb 应用程序会在应用程序目录中查找名为 \wwwroot\ 的文件夹。 Stylesheet.Filename 路径与此文件夹相关。

要解决您的问题,只需创建..\Win32\Debug\wwwroot\ 并将您的bee.css 放入其中。然后在对象检查器中将StyleSheet.Filename 更改为bee.css

如果您更喜欢按代码设置,可以在 onRender 事件中这样做:

procedure TIWSomeForm.IWAppFormRender(Sender: TObject); 
begin   
  Stylesheet.Filename := 'bee.css'; 
end;

如果要更改内容文件夹,可以执行以下操作:

function IWServerController: TIWServerController;
begin
  Result := TIWServerController(GServerController);
  gsc.ContentPath := 'Full\Path\Here';
end;

请注意,您需要在构造函数中执行此操作!

文档可以在这里找到:http://docs.atozed.com/docs.dll/classes/TIWServerControllerBase.html

PS:不要忘记在 Css 属性中应用您的 CSS 类。

【讨论】:

想法:不使用“..\Win32\Debug\wwwroot\”,可以通过将输出文件夹更改为更方便的文件夹来改善工作流程(我使用与主 DRPJ 相同的文件夹文件夹)。现在您不必浏览所有这些文件夹来更改 CSS 文件 :)【参考方案2】:
    找到已编译的 (exe) 文件(通常位于 \Win32\Debug 中)。 在那里创建一个名为“wwwroot”的文件夹,并将您的 CSS 文件放入该文件夹中。 (文件夹必须有这个确切的名称。任何其他名称都不起作用!) 单击您的表单并编辑 StyleSheet 属性:

提示:背景图片可以用同样的方式编辑。

请注意,您可能更喜欢使用

但 Intraweb 正在使用 .

【讨论】:

以上是关于如何将 CSS 包含到 IntraWeb 项目中?的主要内容,如果未能解决你的问题,请参考以下文章

如果 ul 项目包含 li 项目,如何将 css 应用于外部 div

将 bootstrap.css 包含到 nuxt 项目的最佳方法是啥?

Intraweb IIS发布,数据连接问题

Delphi XE7 开发ActiveX 及在IntraWeb下调试

Delphi XE7下 Intraweb 发布为ASP.NET应用程序

将 CSS 和 JS 库包含到 vue spa 组件中