This is some test code I'm working on to see the different effects across browsers:
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>bob</title>
<style type="text/css">
#div_container {
width: 250px;
border: 1px solid #0000ff;
padding: 5px;
}
#div_one {
width:100%;
overflow:auto;
position:relative;
border: 1px solid #ff0000;
margin-bottom: 5px;
}
#div_two {
overflow: scroll;
border: 1px solid #ffff00;
margin-bottom: 5px;
}
#div_three {
overflow: hidden;
border: 1px solid #ff00ff;
margin-bottom: 5px;
}
#div_four {
overflow: visible;
border: 1px solid #00ff00;
margin-bottom: 5px;
}
#div_five {
overflow: auto;
border: 1px solid #00ffff;
margin-bottom: 5px;
}
</style>
</head>
<body>
<div id="div_container">
<div id="div_one">
<table>
<tr>
<td>TEST div1 12345678901234567890123456
789012345<
/td>
</tr>
<tr>
<td>2</td>
</tr>
<tr>
<td>3</td>
</tr>
<tr>
<td>4</td>
</tr>
<tr>
<td>5</td>
</tr>
<tr>
<td>6</td>
</tr>
<tr>
<td>7</td>
</tr>
<tr>
<td>8</td>
</tr>
</table>
</div>
<div id="div_two">
<table>
<tr>
<td>overflow: scroll; div2 12345678901234567890123456
789012345<
/td>
</tr>
<tr>
<td>2</td>
</tr>
<tr>
<td>3</td>
</tr>
<tr>
<td>4</td>
</tr>
<tr>
<td>5</td>
</tr>
<tr>
<td>6</td>
</tr>
<tr>
<td>7</td>
</tr>
<tr>
<td>8</td>
</tr>
</table>
</div>
<div id="div_three">
<table>
<tr>
<td>overflow: hidden; div3 12345678901234567890123456
789012345<
/td>
</tr>
<tr>
<td>2</td>
</tr>
<tr>
<td>3</td>
</tr>
<tr>
<td>4</td>
</tr>
<tr>
<td>5</td>
</tr>
<tr>
<td>6</td>
</tr>
<tr>
<td>7</td>
</tr>
<tr>
<td>8</td>
</tr>
</table>
</div>
<div id="div_four">
<table>
<tr>
<td>overflow: visible; div4 12345678901234567890123456
789012345<
/td>
</tr>
<tr>
<td>2</td>
</tr>
<tr>
<td>3</td>
</tr>
<tr>
<td>4</td>
</tr>
<tr>
<td>5</td>
</tr>
<tr>
<td>6</td>
</tr>
<tr>
<td>7</td>
</tr>
<tr>
<td>8</td>
</tr>
</table>
</div>
<div id="div_five">
<table>
<tr>
<td>overflow: auto; div4 12345678901234567890123456
789012345<
/td>
</tr>
<tr>
<td>2</td>
</tr>
<tr>
<td>3</td>
</tr>
<tr>
<td>4</td>
</tr>
<tr>
<td>5</td>
</tr>
<tr>
<td>6</td>
</tr>
<tr>
<td>7</td>
</tr>
<tr>
<td>8</td>
</tr>
<tr>
<td> </td>
</tr>
</table>
</div>
</div>
</body>
</html>
Concentrating on div1:
In IE7 you can hopefully see that when the horizontal scrollbar is needed, it has to put a vertical scrollbar in to allow for the horizontal scrollbar.
I had a work around (using css3 overflow-x and y) but then this fails to work in Safari.
Any ideas?
Start Free Trial