您的位置:首页 > Web前端 > CSS

滚动条样式的设定(ipad也好用)

2016-06-10 21:35 375 查看
我采用了两个table的方式,就是将表头放进一个table中,将表体放入一个table中,这样就可以灵活的操纵滚动条了

<%@ Page Language="C#" AutoEventWireup="true" CodeFile="Default.aspx.cs" Inherits="_Default" %>

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">

<html xmlns="http://www.w3.org/1999/xhtml">

<head>

<title></title>

<style type="text/css">

.Box{ overflow:hidden;}

.tableBox{ height:200px; width:200px; position:relative; overflow-x:auto; overflow-y:hidden;table-layout:fixed; }

.tablehead{ position:absolute; width:300px; left:0;}

.tablebody{ position:absolute; width:300px; height:200px; overflow-y:auto; overflow-x:hidden; top:20px; left:0;}

td{ width:88px;white-space:normal;}

table{border-collapse: collapse; border-spacing: 0;margin-left: 5px;margin-right: 5px;table-layout:fixed;}

</style>

</head>

<body>

<div class="Box">

<div class="tableBox" >

<div class="tablehead">

<table class="head" border="1px">

<tr>

<td>姓名</td><td>性别</td><td>年龄</td>

</tr>

</table>

</div>

<div class="tablebody">

<table class="body" border="1px" >

<tr><td>小明的地地道道的地地道道的</td><td>男</td><td>12</td></tr>

<tr><td>小明</td><td>男</td><td>12</td></tr>

<tr><td>小明</td><td>男</td><td>12</td></tr>

<tr><td>小明</td><td>男</td><td>12</td></tr>

<tr><td>小明</td><td>男</td><td>12</td></tr>

<tr><td>小明</td><td>男</td><td>12</td></tr>

<tr><td>小明</td><td>男</td><td>12</td></tr>

<tr><td>小明</td><td>男</td><td>12</td></tr>

<tr><td>小明</td><td>男</td><td>12</td></tr>

<tr><td>小明</td><td>男</td><td>12</td></tr>

<tr><td>小明</td><td>男</td><td>12</td></tr>

<tr><td>小明</td><td>男</td><td>12</td></tr>

</table>

</div>

</div>

</div>

</body>

</html>

其中有有三个div,最外侧一个,控制全局,一个控制表头,一个控制表身。有以下几点注意:

1.最外侧的div,需要用overflow-x来控制最横向滚动,因为overflow-x、y在IE中存在兼容性问题,当overflow-x/overflow-y其中之一被设置成'scroll'、'auto'、'hidden'时,另一个还是'visible',不会被设置为'auto'
所以,最好使用 "overflow-x:scroll; overflow-y:auto",这时候,右边的在需要时才会显示。如果希望右边的滚动条一直不显示,那么,可以使用:"overflow-x:scroll; overflow-y:hidden;"

2.表头和表体的各列需要对齐,所以可以用table-layout:fixed;来固定宽度

3.当用table-layout:fixed;固定了列宽度,也就会有长的内容会显示不全,那么可以用white-space:normal;来进行换行
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: