I have a simple table, with a header and table body. All the cells are supposed to be fixed width, only one is variable (e.g. name).
I need table-layout: fixed
in order to use text-overflow: ellipsis
on the variable-width cells.
Here's the CSS for the table:
table {
width: 550px;
border: 1px solid #AAA;
table-layout: fixed;
border-collapse: collapse;
}
table td, table th {
border: 1px solid #DDD;
text-align: left;
padding: 5px 15px 5px 15px;
-webkit-box-sizing: border-box;
box-sizing: border-box;
}
.one {
width: 60px;
}
.two {
width: auto;
text-overflow: ellipsis;
overflow: hidden;
white-space: nowrap;
}
.three, .four, .five {
width: 90px;
}
Check the HTML, along with a demo.
I'm trying to get this table behave the same in all browsers, but it seems that box-sizing: border-box is ignored in Safari. Although according to this answer, it should be a fix to a bug in older versions of Safari.
Here's how it looks in Chrome:
And how it looks in Safari 6.0.3:
This problem is also present in all newer Safari for Mac that I tested. I'm almost sure I tested it a week ago in Safari, both old and new and it worked fine. It is somehow like the new Safari suddenly got a new kind of bug.
I'm using Safari Version 6.0.3 (7536.28.10). Old Safari Version 5.0.5 (6533.21.1, 6533.21) seems to be working fine.
People, help me before going mad! Am I doing something wrong here or is it truly a bug?
6.0.3
. – Illuminate