最近、uniapp を使用して小さなプログラムを開発する過程で、ビュー タグが折り返されないという問題が発生しました。この記事では、この問題の解決策を共有します。
uniapp を使用する場合、ビュー タグを使用してページをレイアウトすることがよくありますが、ページ レイアウト プロセス中に、タグ内のコンテンツが行全体を占めている場合でも、タグが自動的に配置されないことに気づくことがあります。行を折り返すことはできますが、ページ幅がオーバーフローしてしまうため、この問題を解決するにはいくつかのテクニックを使用する必要があります。
1. フレックス レイアウトを使用する
ビュー タグに flex 属性を追加し、フレックス レイアウトを使用して内部のサブ要素を配置します。
サンプル コードは次のとおりです:
<view> <view>item1</view> <view>item2</view> <view>item3</view> </view>
.flex-wrap { display: flex; flex-wrap: wrap; } .flex-item { width: 100px; height: 100px; border: 1px solid #ddd; margin-right: 10px; margin-bottom: 10px; }
実行結果:
2. グリッド レイアウトを使用します
Useグリッド レイアウトも ラベルが折り返されない問題を解決するには、親要素に display:grid; 属性を設定し、次に子要素に Grid-column 属性または Grid-Row 属性を設定するだけです。
サンプル コードは次のとおりです:
<view> <view></view> <view></view> <view></view> </view>
.grid-wrap { display: grid; grid-template-columns: repeat(auto-fill, 100px); grid-gap: 10px; } .grid-item { height: 100px; border: 1px solid #ddd; } .item1 { grid-column: 1/3; } .item2 { grid-column: 3/5; } .item3 { grid-column: 1/2; }
実行結果:
3. テキストを使用して
を囲みます。コンテンツが text で、テキストを自動的に折り返す必要がある場合は、テキストが自動的に折り返されるように、ビュー タグに White-space:normal; 属性を設定できます。ただし、コンテンツが次のような要素の場合は、画像の場合、この方法は適用されません。
サンプル コードは次のとおりです:
<view> 欢迎来到我的博客欢迎来到我的博客欢迎来到我的博客 </view>
.text-wrap { width: 200px; white-space: normal; }
実行結果:
##概要: 上記はいくつかの解決策です。改行のないメソッドは比較的シンプルで理解しやすいため、開発者は特定の状況に応じてさまざまなメソッドを選択して最良の結果を得ることができます。以上がuniapp が改行なしでビュータグを呼び出す問題の簡単な分析の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。