我如何设置Dojo TitlePane的高度,相对于外部容器节点的大小?

时间:2012-12-25 05:01:32

标签: javascript html css dojo

在下一个例子中,我在200px高度容器之间创建了一个TitlePane。我将TitlePane高度设置为100%,但似乎没有扩展。

相关代码:

var titlePane = new TitlePane({
    title: "TITLE",
    toggleable: false,
    style: "height: 100%; overflow-y: auto",
    content: "foo"
});
var outerPane = new ContentPane({
    content: titlePane,
    style: "height: 200px;"
}, dojo.byId("body2"));

完整示例:

http://jsfiddle.net/bzFPM/

有什么想法吗?

2 个答案:

答案 0 :(得分:1)

添加此款式

.dijitTitlePaneContentOuter 
{
    height:80%;   
}

我不确定这是不是最好的选择。但它也有效。

http://jsfiddle.net/bzFPM/4/

答案 1 :(得分:0)

我找到了一个使用手风琴容器的工作量。当只包含带标题的窗格时,它看起来几乎相同。

function example(ContentPane, Accordion, Button){

var titlePane = new Accordion({
       style: "height: 100%; overflow-y: auto"
     });

var innerPane = new ContentPane({title:'TITLE', content:'foo'})

titlePane.addChild(innerPane);

var outerPane= new ContentPane({
    content:titlePane,
    style: "height: 200px;"
}, dojo.byId("body2"));

outerPane.startup()
var button= new Button({
    label:"add line",
    onClick:function(ev){
        innerPane.set("content", innerPane.get("content")+"<br>foo")
    }    
}).placeAt(dojo.byId("body2"), "after");
}

require(["dijit/layout/ContentPane", "dijit/layout/AccordionContainer",
     "dijit/form/Button"], example );

http://jsfiddle.net/bzFPM/5/