ご挨拶
おはよううございます。 本日担当させていただくことになりました、株式会社WACULでhtmlを書いている秋山です。 以後、よろしくお願いいたします。デザインをhtml化するとき困った事
デザインをhtml化する上で時々「これ、どう~すっかな」というものがあります。 そのうちの一つがこれ。th,tdの仕切り線の上下が途切れているのがポイントです。
このデザインをもらったとき、思わず確認しました。
「これ、ど~しても再現したい?」
「ど~~~~~しても、したい、です!!!!!」
「そっかー・・・」
隠してしまえばいい
解決策の一つとしては線の上下を背景色で塗りつぶした block要素で塗りつぶしてしまう、です。css
table.basic th, table.basic td {
border-bottom: solid 1px #ddd;
padding: 24px 30px 21px 0;
line-height: 200%;
position: relative;
overflow: visible;
}
table.basic td {
border-left: solid 1px #ddd;
padding-left: 30px;
}
table.basic td::before, table.basic td::after {
content: "";
background-color: #fff;
width: 5px;
height: 20px;
display: block;
position: absolute;
left: -3px;
}
table.basic td::before {
top: 0;
}
table.basic td::after {
bottom: 0;
}
といった感じです。
とはいえ、before,abterが使えない、th,tdにpositionが適用されないといった場合があります。
その時はそれ用に手を加える必要がありますが、原理は同じで再現可能です。
「不要な部分は隠してしまえばいいのです。」