私は動的3列レイアウトを作成する方法を探していますが、左側の列がemtpyの場合は、コンテンツと右側の列が広くなります。 joomlaテンプレートのように、左の位置にモジュールを置かないと展開します。dynamic 1-2-3 column layout
0
A
答えて
0
ページコンテンツに基づいて表示される別のページテンプレートを使用する必要があります。または、ページの読み込み後にjavascriptを使用してもかまいませんが、推奨しません。 カラムが空の場合、Joomlaは別のテンプレートを表示します。 (空:「動的」列の幅を持っている
別のオプションは、テーブルを使用しているが、あなたはエルを使用して空の要素の兄弟を選択するようにCSSを使用してみてください
1
:-)そこに行きたくありません空の要素)とel〜el(一般的な兄弟)セレクタ。
たとえば、このコードは3列のレイアウトを設定し、空の左の列の兄弟を選択し、幅を調整します。
は、あなたがそれをさらに容易にするだろうと各列のクラスを持っているが、これは基本的な考え方である場合:
<div class="wrapper">
<div class="column"><!--This needs to be completely empty for the solution to work --></div>
<div class="column">
Content
</div>
<div class="column">
Content
</div>
</div>
のマークアップのための
.wrapper {
zoom: 1;
width: 90%;
height: 90%;
position: absolute;
}
.wrapper:after {
content: "";
display: block;
clear: both;
}
.column {
width: 32%;
height: 100%;
float: left;
margin: 0 0.66%
}
.column:empty {
width: 0%;
border: none;
margin: 0;
}
.column:empty ~ .column {
width: 48%;
margin: 0 0.98%;
}
をちょうどあなたの場合があることに注意してください空の要素に空白文字がある場合、空として登録されません。例:
<div class="column">
</div>
+0
それは巧妙なアイデアですが、私はjoomlaはモジュールの位置にモジュールを数えるためにそれは自分のPHP関数を持っていることを発見したと列をせずにページをレンダリングし、別のCSSを追加することができますが、このアイデアはjoomla以外のプロジェクト、 ! – ubo281
関連する問題
- 1. @ angular/flex-layout 'space-between' layout
- 2. java.lang.ArrayIndexOutOfBoundsException \t com.sun.mail.imap.MessageCache.getMessage(MessageCache.java:123)
- 3. ListView Layout
- 4. SELECT WHERE id = '123' || other_col = other_call
- 5. Android Fragment Inflate layout
- 6. Zend Framework Layout
- 7. Python Kivy Float Layout
- 8. Magento Layout Rewrites
- 9. Spinner、Onitemselected、Layout
- 10. PlayN + tripleplay layout
- 11. JQuery layout hide
- 12. Java Vertical Layout?
- 13. CakePHP - Just Layout?
- 14. windows process memory layout
- 15. t:selectOneRadio layout = "spread"
- 16. iOS Layout Xcode 8
- 17. android listview layout error
- 18. android constraint layout installation
- 19. Expandable List Item Layout
- 20. Zend Layout Double Div
- 21. ExtJs Accordion Layout Collapse
- 22. TileView Image Column not show image(Devexpress)
- 23. JTable Dynamic Update
javascriptは単純なソリューションですが、ユーザーがjsをオフにするとデザインが壊れているのでしょうか、おそらくPHPのあるsimillarがあります。 – ubo281
Javascriptは解決策ですが、HTMLが解析されて列が表示された後にのみ実行されます。これは、ページの読み込みに「ジャンプ」することを意味します。レイアウトを変更するためにJavaScriptを使用することは避けてください。レイアウトはページが読み込まれる前に行うことができます。ここでの唯一の良い解決策は、別々のテンプレート、または少なくともコンテンツに基づいたクラスを持つことです。 – Richard