【问题标题】:Sitefinity Stylesheet override 5.2Sitefinity 样式表覆盖 5.2
【发布时间】:2012-11-19 21:47:07
【问题描述】:

我需要为我们创建的母版页上的所有元素删除 Sitefinity 的开箱即用样式。我倾注了大量文件,但它们都让我想要更多、更清洁、更简单的方式来实现这一目标。 CSS 覆盖看起来很庞大,从配置文件中删除它会破坏我的业务用户在 CMS 中工作和快速更新的能力。此外,我已经在用户控制级别尝试了自定义小部件覆盖,但仍然不喜欢结果。

那么,如何做到这一点,保持简洁的代码,并让业务用户轻松使用?

【问题讨论】:

  • 一开始您是否关闭了网站模板部分的基本主题,您需要为每个模板执行此操作吗?

标签: asp.net asp.net-mvc razor sitefinity


【解决方案1】:

Sean 是对的 - 如果您不使用默认主题,Sitefinity 不会将样式添加到您的模板中。

鉴于您在 sitefinity.com 上的论坛帖子,您遇到的麻烦并不是因为 Sitefinity,而是因为使用了默认的 RadControls。

如果用自定义解决方案替换它们,不仅不会添加任何样式,而且 html 标记本身也会更清晰。

例如,您可以使用市场导航控件之一或将KendoUI 与站点地图数据源结合使用,这将为您提供如下内容:

<ul id="sitepanelnav" class="sitepanelnav k-group" data-role="treeview" >
...
<li class="k-item">
 <div class="k-mid">
  <span class="k-in">
   <a href="/page2.aspx">linktext</a>
  </span>
 </div>
</li>
...
</ul>

但是,如果您真的很喜欢干净的标记和干净的样式,您可以使用 API 渲染出 100% 干净的 ul/li 并从那里得到 100% 的控制。

如果您仍然打算使用 RadControls,请从 Stylebuilder 开始以直观地构建您的设计基础,然后手动调整/集成和优化生成的 .css 文件。

您作为皮肤输入的名称是您应该在小部件选项中添加为“设计师皮肤”的名称。

简而言之:是的,它可以完成,但它需要一些编码或一些样式设置,你喜欢哪一个当然取决于你。

【讨论】:

  • 感谢@jbokkers,但我想我的意思是在sitefinity 插入的样式表中找到的所有样式都继承,而不仅仅是导航小部件等上的样式,而是每个样式。是不是更清楚一点?
  • 嘿尼克,是的,就像我说的“如果您不使用默认主题,Sitefinity 将不会添加任何样式。”如果您正在添加任何样式,它要么 A)因为页面上的 RadControl 小部件,要么 B)您已打开浏览和编辑,在实时浏览站点上覆盖编辑功能。在此处查看gist.github.com/4124678 以查看演示 SF v5 主页上的查看源代码。没有任何内联样式,只有我自己的 .css 文件正在加载。如果您想进一步谈论它,请随时在 SO 之外联系我...... Jochem
猜你喜欢
  • 2013-01-12
  • 1970-01-01
  • 2020-09-21
  • 1970-01-01
  • 1970-01-01
  • 2013-07-08
  • 2014-08-02
  • 1970-01-01
  • 2012-03-19
相关资源
最近更新 更多