Центрирование dijit.form.buttons в ContentPane - PullRequest
1 голос
/ 01 сентября 2011

I пограничный контейнер с 3 панелями содержимого.слева, в центре, справа.Левая сетка данных (левая панель контента), правая сетка данных (правая панель контента), 2 кнопки в центральной панели контента, которые перемещают объекты между сетками.

Моя единственная проблема - это форматирование кнопок, кнопки всегда отображаются в верхней части центральной панели содержимого.Мне нужно, чтобы они были горизонтально и вертикально по центру центральной панели, независимо от размера браузера.Мои эксперименты не смогли отцентрировать их.

<div  dojoType="dijit.layout.BorderContainer" gutters="false" >
    <div dojoType="dijit.layout.ContentPane" style="width: 45%; border: 1px solid lightgray" region="left">
        <table id="possibleChoices"
               dojoType="dojox.grid.DataGrid"
               clientSort="true"
               queryOptions="{cache:true}"
               store="possibleChoices"
               noDataMessage="<s:text name="messages.user.noChoiceAvailable"/>"
               rowsPerPage="50">
            <thead class="hideDojoLoad">
                <tr>
                    <th width="100%" field="name">possible choices</th>
                </tr>
            </thead>
        </table>
    </div>
   <div dojoType="dijit.layout.ContentPane" region="center" style="text-align: center; vertical-align: middle ">
        <button dojoType="dijit.form.Button" type="button" onclick="add"><s:text name="button.addArrow"/></button><br/>
        <button dojoType="dijit.form.Button" type="button" onclick="remove"><s:text name="button.removeArrow"/></button>
    </div>
    <div dojoType="dijit.layout.ContentPane" style="width: 45%; border: 1px solid lightgray" region="right">
        <table id="choose"
               dojoType="dojox.grid.DataGrid"
               clientSort="true"
               queryOptions="{cache:true}"
               store="choose"
               noDataMessage="No data found"
               rowsPerPage="50">
            <thead class="hideDojoLoad">
                <tr>
                    <th width="100%" field="name">Choice Made</th>
                </tr>
            </thead>
        </table>
    </div>
</div>

Спасибо всем, кто может помочь новичку за любую помощь.

1 Ответ

1 голос
/ 01 сентября 2011

Хитрость заключается в размещении контейнера границы в центральной области содержимого с пустой областью содержимого, которая просто занимает место.

<div  dojoType="dijit.layout.BorderContainer" gutters="false" >
    <div dojoType="dijit.layout.ContentPane" style="width: 45%; border: 1px solid lightgray" region="left">
     ....
</div>
<div dojoType="dijit.layout.ContentPane" region="center">
    <div  dojoType="dijit.layout.BorderContainer"  gutters="false" >
        <div dojoType="dijit.layout.ContentPane" region="top" style="height:40%; ">
                &nbsp;
        </div>
         <div dojoType="dijit.layout.ContentPane" region="center" style="text-align: center; ">
                <button dojoType="dijit.form.Button" type="button" onclick="add" style="vertical-align: middle"><s:text name="button.addArrow"/></button><br/>
                <button dojoType="dijit.form.Button" type="button" onclick="remove"><s:text name="button.removeArrow"/></button>
         </div>
    </div >
</div>
<div dojoType="dijit.layout.ContentPane" style="width: 45%; border: 1px solid lightgray" region="right">
           .....
</div>
...