Ich habe Probleme mit Tabellenrahmen, die nicht immer richtig zu machen, wenn folgende Bedingungen erfüllt sind:Tabelle Grenzen nicht richtig gemacht wird, wenn td Position: relative
- Die Tabelle in einem div mit
overflow-y:scroll
enthalten ist - Borders auf dem Tisch zusammengebrochen sind
- Elemente
position:relative
gestylt so nahe, wie ich sagen kann, dies geschieht nur auf Chrom (Versi unter 54.0.2840.98 unter Mac OS 10.11.6). Ich habe auf Safari und Firefox ohne Probleme getestet.
Ich habe einen minimalen Fall in JSFiddle (https://jsfiddle.net/5a0a4sL1/24/) verwaltet. Der Code sieht wie folgt aus:
.scroll {
background-color:white;
overflow-y: scroll;
width: 300px;
height: 200px;
}
.wrapper {
height: auto;
width: 280px;
padding: 10px;
margin: 0px;
}
table {
width:90%;
margin:0px 5%;
border-collapse:collapse;
}
td {
position:relative;
border:1px solid black;
}
<div class="scroll">
<div class="wrapper">
<table>
<tbody>
<tr><td style="height:39px;"></td></tr>
<tr><td style="height:75px;"></td></tr>
<tr><td style="height:111px;"></td></tr>
<tr><td style="height:39px;"></td></tr>
</tbody>
</table>
</div>
</div>
Die Seite sieht wie folgt aus, wenn es ein Problem ist:
Hier werden die Grenzen für die untere Reihe-and-a- Bit der Tabelle kann nicht gerendert werden, obwohl Tabelleninhalte anzeigen würden, wenn es welche gäbe. Die Präsenz und der Schweregrad des Problems hängen von der Größe des Chrome-Fensters ab, was mich zu der Annahme verleitet, dass dies ein Fehler im Browser ist.
Meine Frage ist diese: Gibt es irgendetwas im Code, der aussieht, als ob ich offensichtlich den Browser missbrauche? Irgendwelche Optimierungen, die die gleiche Aufgabe erfüllen könnten (die Position: relativ ist für die Platzierung von Griffen zur Größenänderung erforderlich), ohne dass Chrome verärgert wird? Oder ist das nur ein klarer Browser-Bug?
Bearbeiten: Ich glaube, das ist nicht die "Tabelle Grenzen verschwinden mit Position: relative" Problem here, for example diskutiert. Umrandungen für Tabellenzellen werden oft teilweise gerendert, und das Problem verschwindet, wenn (zum Beispiel) das Scrollen in der y-Richtung entfernt wird.
Danke! Seltsamerweise habe ich jetzt Probleme, das Problem selbst zu replizieren (Chrome hat sich auf 55.0.2883.75 aktualisiert), aber ich aktualisiere die Höhen und Breiten wie Sie vorgeschlagen haben. –
@JasonCooper Wahrscheinlich war ein Bug in Chrome – evilReiko