テーブルとして使用したときのdivの振る舞いについて、いくつかの調査を行っています(多分適切な単語ではないでしょう)。display:inline-blockを使用して "重複"ボーダーを避けてください
スポイラーの警告:これは私がこれをやりたい理由です。興味がない場合は
table
要素を使用せずにdisplay: table, [...]
プロパティを使用しないで、完全な作業表を作成したいと考えています。これは(私はまだ夢中ではない、私は推測する)table
が私のプロジェクトには適していないことを知り、display: table
プロパティファミリは、スタイリングに際して私に非常に多くの問題をもたらします。 私は、 SaaSは現在、テーブル(Googleスプレッドシート、Excel Online、Airtable、私のプロジェクト)ではなくdivを使用していますが、私は同じ結果を達成しようとしています。理由から。 (スポイラーの終わりは)
まあ、私はかなり迷惑な問題にかなり満足のコードスニペットに出てきた:重複国境display: inline-block
を使用して、
私は絵が良く、私が何を意味するか説明できることをかなり確信している:
私もここにフィドル提供することができます:私たちは、コードを持っているhttps://jsfiddle.net/Lc0rE/j2obdh0h/
そしてここに:
<div class="table-container">
<div class="row-container">
<div class="cell">Cell1</div>
<div class="cell">Cell2</div>
<div class="cell">Cell2</div>
<div class="cell">Cell3</div>
<div class="cell">Cell4</div>
<div class="cell">Cell5</div>
</div>
</div>
CSS
.table-container {
width: 700px;
height: 100vh;
background: #fefefe;
}
.row-container {
display: inline-flex;
flex-direction: row;
flex-wrap: nowrap;
justify-content: center;
background: #fff;
height: 30px;
}
.cell-header {
font-weight: bold;
}
.cell {
display: inline-flex;
flex-direction: column;
justify-content: center;
padding-left: 5px;
min-width: 100px;
/* ;
border-left: 1px solid #dde1e3;
border-right: 1px solid transparent;
border-top: 1px solid transparent; */
border: 1px solid #dde1e3;
top: 0;
overflow: visible;
}
.cell:last-child {
border-right: 1px solid #dde1e3;
}
.row-container:last-child {
border-bottom: 1px solid #dde1e3;
}
.selected {
border: 1px solid #00b9e6 !important;
background: #EBF7FF !important;
}
.cell-content {
display: flex;
flex-direction: row;
justify-content: space-between;
}
私は本当に誰かがこの厄介な問題を解決するために私を助けることができる願っています。 私はこれを実装するさまざまな方法について、あらゆる提案にもオープンしています!
https://jsfiddle.net/j2obdh0h/1/このような何か? – sinisake
答えをありがとう!フィドルは魅力のように動作します!セルでクリックイベントが発生したときに、選択したクラスだけが期待どおりに動作していません。あなたが私に見せたのと同じ国境の規則を適用する必要があると思いますか? – Lc0rE
'display:inline-block'ダブルボーダーは発生しません。各セルには独自の罫線があるため、2つの罫線があります。前のコメントは機能するはずです(各セルに上/右の境界線を与えるだけです)。 – myfashionhub