проблема css в топе:? - PullRequest
       36

проблема css в топе:?

1 голос
/ 09 марта 2010

Мне нужно исправить заголовок в виде сетки, и я использую это в стиле Class

<style type="text/css">
 .gridFixedHeader
{
background-color:white;
position:relative;
top:expression(GridView1.offsetParent.scrollTop-2);
}
</style>

но я получаю ошибку, что выражение (GridView1.offsetParent.scrollTop-2); недопустимо ... что все, что мне нужно сделать, чтобы сделать эту работу .....

любые предложения

Основная цель ... исправить заголовки, чтобы они не двигались при прокрутке сетки вверх или вниз ...

любая помощь будет оценена ...

вот мой код вида сетки

<asp:Panel ID="Panel1" runat="server" Height="100px" ScrollBars="Vertical">

 <asp:GridView ID="GridView1" runat="server" AllowSorting="True" 
        AutoGenerateColumns="False" BackColor="White" BorderColor="#CCCCCC" 
        BorderStyle="None" BorderWidth="1px" CellPadding="3"  
        DataKeyNames="MachineGroupID" DataSourceID="SqlDataSource1">
        <RowStyle ForeColor="#000066" />
        <HeaderStyle CssClass="gridFixedHeader" />
        <Columns>
            <asp:BoundField DataField="MachineGroupID" HeaderText="MachineGroupID" 
                InsertVisible="False" ReadOnly="True" SortExpression="MachineGroupID" />
            <asp:BoundField DataField="MachineGroupName" HeaderText="MachineGroupName" 
                SortExpression="MachineGroupName" />
                        </Columns>
        <FooterStyle BackColor="White" ForeColor="#000066" />
        <PagerStyle BackColor="White" ForeColor="#000066" HorizontalAlign="Left" />
        <SelectedRowStyle BackColor="#669999" Font-Bold="True" ForeColor="White" />
        <HeaderStyle BackColor="#006699" Font-Bold="True" ForeColor="White" />
    </asp:GridView>
    </asp:Panel>

так что здесь у меня есть сетка, где, когда я прокручиваю, строка заголовка тоже движется .. Я не хочу, чтобы это произошло ..

Ответы [ 4 ]

3 голосов
/ 09 марта 2010

Недопустимо в W3C. Это единственная вещь IE. Чтобы правильно выполнить то, что вы ищете, вам потребуется запустить JavaScript и исправить заголовки.

Если вы объясните свой желаемый результат, я уверен, что кто-то может помочь. Я сделал так, чтобы заголовки GridView выглядели так, как я хочу много раз.

ОБНОВЛЕНИЕ: Вот хорошая статья: http://www.dotnetcurry.com/ShowArticle.aspx?ID=255

1 голос
/ 09 марта 2010

Когда представление сетки отображается в формате html, идентификатор GridView1, вероятно, переписывается.

Вы, вероятно, хотите что-то вроде:

top:expression(<%= GridView1.ClientID %>.offsetParent.scrollTop-2);

хотя это может дать вам то, что вы хотите, вероятно, это не лучшая форма.

0 голосов
/ 09 марта 2010

Если вы пытаетесь исправить это в верхней части окна просмотра, попробуйте:

.gridFixedHeader
{
background-color:white;    
position:fixed;
top:20px; //optional
}

в элементах CSS

edit: только что понял, что вы выглядите так, будто разрабатываете заголовок GridViews, так что это, вероятно, не сработает, попробуйте опубликовать часть сгенерированного Gridview HTML и что вы хотите с этим сделать, пожалуйста

0 голосов
/ 09 марта 2010

Настоятельно не рекомендуется использовать CSS-выражения, поскольку они выполняются при каждом событии браузера - включая mouseMove. Они также не работают ни на чем, кроме IE.

Я не могу ответить на ваш вопрос в связи с отсутствием деталей того, чего вы пытаетесь достичь.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...