通常のASP.NetMVCに従って、フィールドラベルdivとフィールドエディターdivを使用して編集ページを作成しました。その結果、次のHTMLが作成されます。
<div class="editor-label">
<label for="Code">Project Code</label>
</div>
<div class="editor-field">
<input id="Code" name="Code" type="text" value="" />
</div>
上記のdivのペアは、私のフォームにある編集可能なフィールドの数だけ繰り返されます。デフォルトでは、これらはページ上で上下に表示されます。私が達成したいのは、CSSを使用してページをテーブルレイアウトで表示することです。だから私のCSSは次のようなものです:
.field-label, .field-editor{
display: table-cell;
}
これにより、ブラウザウィンドウの最後で折り返され、すべてが隣り合ったセルに表示されます。ビューにマークアップを追加せずに、各field-editor divの後(または各field-label divの前)に新しい行を強制するにはどうすればよいですか?これは、displayを割り当てる新しいdivのように、ビューにマークアップを追加することで簡単になることを理解しています:table-row。しかし、ラベルとエディターの組み合わせの各セットの間にこのマークアップを追加する必要があり、それはDRYの原則に違反しているように感じます。したがって、この追加のマークアップを行う必要なしにこれを実行したいと思います。