0
CSS display: table/table-row/table-cell
のプロパティを持つ表を再現しようとしています。しかし、このようにして作成されたテーブルには、<form>
要素が含まれているため、テーブルの構造が崩れているようです。アラインメントはオフになり、フォームを含む完全な行は前の行の最初のセルの幅などに制限されます。CSSの "display:table"プロパティで再現された表のフォーム
このような状況でフォームが他の要素のように動作するようにすることはできますか? CSSにdisplay: inline
というフォームを定義しましたが、それは役に立ちません。
私のコード(読みやすくするためにそれを簡体字)OPの要求を1として
form {
display: inline;
}
.calendarTable {
display: table;
margin: auto;
width: 60%;
}
.calendarRow {
display: table-row;
}
.calendarCell {
display: table-cell;
text-align: left;
padding: 10px;
vertical-align: middle;
}
<div class="main">
<div class="calendarTable">
<div class="calendarRow">
<p class="calendarCell">Some title</p>
<p class="calendarCell">Some title</p>
<p class="calendarCell">Some title</p>
</div>
<?php some php loop ?>
<form method="post">
<div class="calendarRow">
<p class="calendarCell">
<some inputs>
</p>
<p class="calendarCell">
<some inputs with formaction>
</p>
</div>
<br>
</form>
<?php end php loop; ?>
<form method="post">
<div class="calendarRow">
<p class="calendarCell">
<some inputs>
</p>
<p class="calendarCell">
<some inputs with formaction>
</p>
</div>
</form>
</div>
</div>
やあ、それは私たちはあなたが間違っているものを見つけるのを助けるようになります、u'reコードスニペットの一部を提供してください。 – arisalsaila
@arisalsaila確かに、例を示すコードを追加しました... – DannyBiker
テーブルが必要な場合は、なぜ「
答えて
UPDATE
、
確かに、有効かどうかわかりませんが、完璧に動作します。
SOLUTION
を割り当てます。
1行目は3つのセルを有していた2番目と3番目の行は、わずか2セルそれぞれを有し
.calendarRow
S巻き付け
<form>
sがありました。我々は
<table>
、<tr>
、および<td>
に無効なHTMLを適用した場合、それらも同様に不安定に実行することになり。このスニペットでは私が持っている:<forms>
table-layout:fixed
を削除しました。各セルの幅を32%と宣言しています。通常、これは第3列が他の列より多くの内容を有するために達成するのが難しい。SNIPPET
出典
2017-03-19 13:44:06 zer00ne
あなたの答えをありがとう。欠落している細胞はタイプミスであり、すべての行で3つです。 問題は私が
@DannyBiker '
@DannyBiker更新された回答を見る、それは素晴らしい作品です。 – zer00ne
関連する問題