首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Oracle ADF -特立尼达皮肤-将CSS导入皮肤css

Oracle ADF -特立尼达皮肤-将CSS导入皮肤css
EN

Stack Overflow用户
提问于 2014-08-08 14:40:18
回答 2查看 5.7K关注 0票数 1

我是Oracle ADF的新手,我使用Jdeveloper 11.1.1.7来为我的应用程序创建样式。我想用两个不同的css文件作为皮肤。lightblue.css将为组件应用浅蓝色样式,而base.css将为组件应用所有其他样式。通过这种方式,我可以通过更改/创建彩色css文件将颜色主题更改为我的应用程序。但不知何故在lightblue.css中导入base.css并不适用于ADF.

下面是特立尼达配置文件- trinidad-config.xml内容:

代码语言:javascript
复制
<?xml version="1.0" encoding="windows-1252"?>
<trinidad-config xmlns="http://myfaces.apache.org/trinidad/config">
  <skin-family>LightBlue</skin-family>
</trinidad-config>

这里还有特立尼达皮肤文件- trinidad-skins.xml内容:

代码语言:javascript
复制
<?xml version="1.0" encoding="windows-1252"?>
<skins xmlns="http://myfaces.apache.org/trinidad/skin">
    <skin>
    <id>LightBlue.desktop</id>
    <family>LightBlue</family>
    <extends>fusion-simple</extends>
    <render-kit-id>org.apache.myfaces.trinidad.desktop</render-kit-id>
    <style-sheet-name>css/lightblue.css</style-sheet-name>
  </skin>
</skins>

下面是我的css示例文件- lightblue.css

代码语言:javascript
复制
@namespace af "http://xmlns.oracle.com/adf/faces/rich";
@namespace dvt "http://xmlns.oracle.com/dss/adf/faces";

@import url("base.css"); /* importing external css file */

af|panelGroupLayout.navigationPane
{
    border:#00A9E0 solid 1px;
}

此外,base.css与- lightblue.css和其内容位于同一个文件夹"css“中:

代码语言:javascript
复制
@namespace af "http://xmlns.oracle.com/adf/faces/rich";
@namespace dvt "http://xmlns.oracle.com/dss/adf/faces";

af|panelGroupLayout.navigationPane 
{
    height: 32px;
    width: 98%;
    text-align: center;
    margin: 0 1%;
}

在web.xml中也使用了内容压缩,如下所示:

代码语言:javascript
复制
  <context-param>
    <description>Trinidad Style Compression</description>
    <param-name>org.apache.myfaces.trinidad.DISABLE_CONTENT_COMPRESSION</param-name>
    <param-value>true</param-value>
  </context-param>

当我在JSF页面中使用样式时,我看不到任何应用于在base.css中定义的组件的样式,但可以从lightblue.css中看到所有样式

我是没有正确导入我的base.css,还是遗漏了什么?

请帮帮忙。

EN

回答 2

Stack Overflow用户

发布于 2014-08-08 16:45:24

尝试像这样修改lightblue.css

代码语言:javascript
复制
@import url("base.css"); /* importing external css file */

@namespace af "http://xmlns.oracle.com/adf/faces/rich";
@namespace dvt "http://xmlns.oracle.com/dss/adf/faces";
票数 0
EN

Stack Overflow用户

发布于 2014-08-09 01:55:12

我会说你做错了。ADF的实现方式更像java。

您应该创建一些基本外观,以保存所有的基本css规则。然后,你扩展这个基础皮肤与你的彩色版本“浅蓝”或其他。

您可以在文档(20.2.3如何注册自定义皮肤)中阅读详细信息

此外,您还可以使用Oracle ADF Skin Editor获得定制皮肤构建的IDE帮助。

您可以选择抓取最新版本,只需在皮肤创建对话框中选择正确的ADF版本(11.1.1.7)。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/25206056

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档