2017-07-12 6 views
0

私はxPagesをしばらくプログラムしましたが、これはBootstrapを使用してxPageを反応させるのは初めてのことです。私のアンケートに反応する

私は、Domino 9.0.1およびExtLibリリース9.0.1(20160428)でブートストラップ4を使用しています。私のxPageには3つのテーブルを持つアプリケーションレイアウトを含むカスタムコントロールがあり、そのうちの1つに4つのカラムがあります(これは応答する必要があります)。

私のxPageは反応しません。理由はわかりません。 1.アプリケーションレイアウトの設定がのレスポンシブブートストラップ設定で、私のアプリケーションテーマがの場合ブートストラップ4はそれほど私ではありません。すべてのサイトでドキュメントやその他の質問を見てきました。必要?
2.私はstyleClass = "テーブル応答"を各テーブルを囲むdivに入れてみました。メディアクエリも使用する必要がありますか?もしそうなら、なぜブートストラップ構成は「応答性」と呼ばれますか?ここで

は私のXSPのプロパティにあるものである:

xsp.ajax.renderwholetree=false 
xsp.client.script.radioCheckbox.ie.onchange.trigger=early-onclick 
xsp.persistence.mode=fileex 
xsp.resources.aggregate=true 
xsp.theme=Bootstrap4 
xsp.error.page.default=true 
xsp.library.depends=com.ibm.xsp.extlib.library,com.ibm.xsp.extlibx.library 
org.openntf.domino.xsp=godmode,marcel,khan,bubbleExceptions 
xsp.min.version=9.0.1 
xsp.compress.mode=gzip-nolength 
xsp.html.page.encoding=utf-8 
xsp.html.doctype=html 
xsp.html.meta.contenttype=true 

そして、ここでは私のカスタムコントロールに何の一部(マイナス4でカラムテーブル内のラベルとフィールド)である:

<?xml version="1.0" encoding="UTF-8"?> 
<xp:view 
    xmlns:xp="http://www.ibm.com/xsp/core" 
    xmlns:xe="http://www.ibm.com/xsp/coreex" 
    > 
    <xp:this.data> 
     <xp:dominoDocument 
      var="document1" 
      formName="ApplicationForm"> 
     </xp:dominoDocument> 
    </xp:this.data> 
     <div class="table-responsive"> 
    <xp:table 
     border="3" 
     cellspacing="0" 
     cellpadding="0"> 
     <xp:tr> 
      <xp:td> 
       <xe:applicationLayout id="applicationLayout1"> 
        <xe:this.configuration> 
         <xe:bootstrapResponsiveConfiguration 
          banner="false" 
          legal="false"> 
         </xe:bootstrapResponsiveConfiguration> 
        </xe:this.configuration> 
        <xp:this.facets> 
         <xp:div 
          xp:key="MastHeader" 
          align="center" 
          styleClass="table-responsive"> 
          <xp:table 
           border="0" 
           cellspacing="0" 
           cellpadding="0" 
           styleClass="table-responsive"> 
           <xp:tr> 
            <xp:td> 

BLA BLA BLA

<xp:div 
    align="center" 
    styleClass="table-responsive"> 
    <xp:table 
    border="0" 
    cellspacing="0" 
    cellpadding="0"> 
     <xp:tr> 
     <xp:td> 
      <xp:div xp:key="Questionnaire"> 
      <div class="table-responsive"> 
       <xp:callback 
        facetName="facet_1" 
        id="callback1"> 
       </xp:callback> 
        <xp:table 
         border="0" 
         cellspacing="0" 
         cellpadding="0" 
         styleClass="table"> 
        <xp:tr> 
         <xp:td style="width:10%">        
         </xp:td> 
         <xp:td style="width:40.0%">   
         </xp:td> 
         <xp:td style="width:10%"> 
         </xp:td> 
         <xp:td>     
         </xp:td> 
         </xp:tr> 
        </xp:table> 
       </div> 
      </xp:div> 
     </xp:panel> 
    </xe:applicationLayout> 
     </xp:td> 
     </xp:tr> 
    </xp:table> 
    </div> 
</xp:view> 

いずれの説明も大歓迎です。

+0

"あらゆる.tableに.table応答性を追加することにより、応答性のテーブルを作成します..." を '.table-responsive'は' .table'クラスと組み合わせて使用​​する必要があります。 –

+0

私はCSSのブートストラップ命令に従って、各テーブルクラスの各divクラスとテーブルに応答可能なテーブルを配置しましたが、まだ変更はありません。私はアプリケーションのレイアウト自体を削除しました。なぜなら、それは応答性を助けるように見えなかったからです。 Howardが提案したように、各行にdivを追加してみるつもりです。他に提案があれば、私はそれらに公開しています。 –

答えて

0

Aquilaが述べたように、テーブルのスタイルも変更する必要があります。

私は常に行のdivも追加しますが、それが重要かどうかはわかりません。 applicationlayout自体は応答しますが、行、列(またはBS 4が使用するもの)などのすべてのcssとhtmlを指定する必要があります。

私は通常appLayoutを使用しません。ナビゲーションバーはうまく機能します。適切なhtmlとcssを学び、適切なブートストラップページに必要なものがページに出力されていることを確認してください。

0

ExtLib 17がブートストラップ4用に設計されているかどうかわかりません。9.0.1 FP8(ExtLib 17に相当)は、Bootstrap 3.3.7のみを提供します。ブートストラップはスタイリングだけではなく、HTMLレイアウトでもあるため、異なるHTMLを出力するために、異なるレンダラーが必要な場合があるため、CSSを適用しても正しく動作しない場合があります。

+0

ポールの情報ありがとうございます。私はBootstrap3を選択しました。これは応答性の点で何も変わっていませんでしたが、ここでは、この潜在的な問題なしに上記の提案を試してみるつもりです。 –

+0

私は上記をすべて使いました。ブートストラップ3に変更し、テーブルとテーブルを更新して、それぞれの行の周りにdivを追加し、行container-fluidのクラスを与え、それぞれのdiv class = "col-xs-12 col-lg-3 col-md-3 col-sm-6"を使用していますが、デバイスエミュレータでGoogle Chromeでテストしても応答はありません。 –

+0

そして忘れてしまったのは、フォントが小さくならず、ブートストラップの文書から、これが自動的に起こるはずであることがわかった。いいえ? –

0

ブートストラップスタイリングなどを使用する既存のテーブルをすべて変更するのではなく、テーマに何かを設定できます。たとえば、私はすべてのテーブルに行のホバー/背景色の変更を使用させるために以下を使用します。

<control> 
    <name>DataTable.ViewPanel</name> 
    <property> 
     <name>dataTableStyleClass</name> 
     <value>table table-hover</value> 
    </property> 
</control> 
+0

Chrisに感謝します。私はそれがすべてのCSSコードを入力する必要性を取り除くつもりだと思ったので、私はブートストラップを使用しました - 明らかに私は間違っていました:-) –

関連する問題