2013-07-11 124 views
3

我有下面的表格,里面有一个模型对话框,我已经应用了一些CSS,以便头部在滚动时保持在相同的位置。滚动表时仍然保持表头?

但是在我加载页面后,列被推到左边,这5列应该出现在标题下。

此外,底层页面也被推送到页面的左侧。

   <style> 
        .tblSearchMedia1 tbody { 
        height: 100px; 
        overflow: auto; 
         } 
        .tblSearchMedia1 td { 
        padding: 3px 10px; 
        } 

        .tblSearchMedia1 thead > tr, tbody{ 
        display:block; 

        } 
       </style> 


       <table class="tblSearchMedia1"> 
       <thead> 
        <tr> 
         <th> Region </th> 
         <th> Subregion </th> 
         <th> Country </th> 
         <th> Media Type </th> 
         <th> Media Name </th> 
        </tr> 
       </thead> 
       <tbody data-bind="foreach: MediaGroups"> 
        <tr> 
         <td data-bind="text: ID"></td> 
         <td data-bind="text: ID"></td> 
         <td data-bind="text:ID"></td> 
         <td data-bind="text: ID"></td> 
         <td data-bind="text: ID"></td> 
        </tr> 
       </tbody> 
      </table> 

enter image description here

Link to Larger image

+0

这个小提琴是否显示您遇到的问题? http://jsfiddle.net/wuwdY/1/ – defaultNINJA

+0

不,我已经添加了原始图片的链接 – Xerxes

+0

Got it!我相当确定问题在于你的'display:block';我敢打赌,如果你删除它,它会排队,但我也相信这会消除滚动。我会继续思考。 – defaultNINJA

回答

2

检查问题得以解决:http://jsfiddle.net/javitube/DLjLn/1/

.tblSearchMedia1 
    { 
     width:500px; 
    } 
    .tblSearchMedia1 tbody { 
     height: 50px; 
     overflow:auto; 
     display:block; 
     width:100%; 
    } 

    .tblSearchMedia1 thead th, .tblSearchMedia1 tbody td 
    { 
     width: 100px; 
    } 
    .tblSearchMedia1 td { 
     padding: 3px 10px; 
    } 
    .tblSearchMedia1 thead > tr { 
     position:relative; 
     display:block; 
    } 
0

所以我改变了你的CSS,只是使用的通用选择,便于制作的例子。

body { 
    margin: 0; 
    padding: 0; 
} 
table { 
    border-collapse:collapse; 
} 
th, td { 
    border:1px solid black; 
} 
.tblSearchMedia1 thead { 
    position: absolute; 
    width: 525px; 
} 
.tblSearchMedia1 tbody { 
    width: 525px; 
    height: 100px; 
    overflow: auto; 
} 
.tblSearchMedia1 th { 
    background: #000000; 
    color: #ffffff; 
} 
.tblSearchMedia1 tbody { 
    position:absolute; 
    top: 50px; 
} 
.tblSearchMedia1 th, td { 
    width: 75px; 
    padding: 3px 10px; 
    text-align: center; 
} 

我分配了设置的宽度并将thead位置设置为固定。

这是工作小提琴。

更新的小提琴,以防止父级DOM滚动时标题浮动。

http://jsfiddle.net/wuwdY/7/

+0

标题留在屏幕上的一个地方,如果我滚动主窗口,移出jquery对话框。 – Xerxes

+0

@xerxes固定,请参阅新的小提琴。使用'absolute'而不是'fixed'和'blocked'。 – defaultNINJA

+0

我发现了另外一个问题,http://img850.imageshack.us/img850/7444/81q.png 如果一个字段的字符串比td长,并且将字符串从标题字段中排除,那么您是否可以修复如果是的话,我会选择你的答案作为正确的答案。 – Xerxes

相关问题