Tengo un sitio web (VS2010, asp.net, VB) y estoy usando una página maestra. Tengo varias otras páginas y en uno de ellos me quieren establecer el color de fondo de marcador de posición de contenido. Estoy usando una hoja de estilo y tiene el siguiente código en el .página aspx. (este es sólo el código de la prueba)

<%@ Page Title="" Language="VB" MasterPageFile="~/MasterPage.master" AutoEventWireup="false" CodeFile="Dashboard2.aspx.vb" Inherits="Dashboard2" %>

<asp:Content ID="Content2" ContentPlaceHolderID="ContentPlaceHolder1" Runat="Server">
<div id="body_color">
<table id="mainDisplay">
<tr>
<td>a</td>
<td>a</td>
<td>a</td>
</tr>
<tr>
<td>a</td>
<td>a</td>
<td>a</td>
</tr>
<tr>
<td>a</td>
<td>a</td>
<td>a</td>
</tr>
</table>
</div>
</asp:Content>

He tratado de hacer referencia a la identificación del marcador de posición de contenido, pero no funciona.

El siguiente es el CSS para la mesa como centro horizontal y verticalmente.

#mainDisplay
{
    margin-left:auto;
    margin-right:auto;
    margin-top:100px;
    width:900px;
    height:450px;
}

Código actualizado para mostrar a todos en la página aspx

InformationsquelleAutor Silentbob | 2013-10-04

2 Comentarios

  1. 1

    Solución #1: CSS

    Si esto es un problema de CSS y son sencillos de encontrar una diferencia en torno a su contenido, es probable que tengas que ajustar la forma de que el estilo de su divs. Tratar de dar el div contenedor (el uno alrededor de la mesa que sostiene el color de fondo) esta clase:

    .container-div 
    {
        position:absolute;
        left:0px;
        right:0px;
        bottom:0px;
        top:100px;
    }

    Esto asume que usted quiere un 100px brecha en la parte superior de su contenedor div.


    Solución #2: Cambio de fondo con jQuery

    Agregar una etiqueta de secuencia de comandos dentro de la etiqueta en tu página de contenido. Dentro de la etiqueta de script, coloque un código jQuery para cambiar la clase de la correspondiente capa de fondo. El siguiente ejemplo asume que el fondo de

    Ejemplo:

    Página principal HTML

    <body class="default-bg">
        <p>This is your content outside the ASP content place holder.</p>
    
        <asp:ContentPlaceHolder runat="Server" ID="ContentPlaceHolder1">
        </asp:ContentPlaceHolder>
    </body>

    Contenido HTML de la página

        <script>
            $(function(){
                $('.my-background-layer').removeClass('default-bg').addClass('alternate-bg');
            )};
        </script>
    
    
    
        <div>
            <table id="mainDisplay">
                <tr>
                    <td>a</td>
                    <td>a</td>
                    <td>a</td>
                </tr>
                <tr>
                    <td>a</td>
                    <td>a</td>
                    <td>a</td>
                </tr>
                <tr>
                    <td>a</td>
                    <td>a</td>
                    <td>a</td>
                </tr>
            </table>
        </div>
    </asp:Content>

    CSS

    .default-bg {background:white;}
    .alternate-bg {background:grey;}

    Tenga en cuenta que ContentPlaceHolders están diseñados solamente para reemplazar los segmentos de código dentro de la página principal. Una buena técnica que seguir es colocar al menos dos ContentPlaceHolders en la sección de encabezado de la página maestra.

    La primera es por defecto CSS y Javascript referencias, mientras que el segundo es para el contenido adicional de la página de referencias. Si se deja fuera de estos ContentPlaceHolders de su contenido de la página, la configuración predeterminada de la página maestra se llevará a efecto. Sin embargo, si desea cambiar cualquiera de los principales CSS o Javascript referencias, sólo es necesario agregar una etiqueta para que ContentPlaceHolder y agregar el código para que el contenido de la página.


    Cómo implementar jQuery

    Pensé que usted puede ser que necesite un poco de curso intensivo de cómo instalar jQuery ya que usted menciona no te gusta javascript (vas a tener que aprender tarde o temprano iva). Aquí hay un enlace decente instrucciones:

    • He añadido $(function(){...}) a hacer una función anónima. De lo contrario, estoy seguro de si se activaría automáticamente.
    • No soy un amante de javascript, sino que se verán en este gracias
    • Sólo puede cambiar el código de los elementos dentro de la ContentPlaceHolder utilizando la técnica descrita por rkawano. Si desea cambiar la página completa del color de fondo, tendrás que reemplazar la totalidad de la hoja de estilos CSS (obviamente esto no es recomendable) o el uso de javascript. Que es menos que el CPH se envuelve alrededor de toda la página o el elemento dentro de la CPH es de estilo a cubrir todo el fondo (no hacer que la última parte).
  2. 2

    ContentPlaceHolder elemento no se representan en código de cliente. Ver su código fuente generado y de verificación. Usted necesidad de aplicar estilos a tu div dentro de ContentPlaceHolder.

    Ejemplo:

    <style>
        #placeHolderDiv {
            width: 1000px;
            height: 650px;
            background-color: #AAA;
        }
        #mainDisplay {
            margin-left: auto;
            margin-right: auto;
            margin-top: 100px;
            width: 900px;
            height: 450px;
            background-color: #DDD;
        }
    </style>
    
    
    <asp:Content ID="Content2" ContentPlaceHolderID="ContentPlaceHolder1" Runat="Server">
        <div id="placeHolderDiv">
            <table id="mainDisplay">
    ...
    • gracias, lo probé y el color era sólo del grosor de la tabla. Yo lo quiero para cubrir el lapso de los contenidos en lugar del titular.
    • Usted necesita para ajustar el ancho y la altura de la div achiev este efecto.
    • He intentado eso antes de publicar, pero me centro en la tabla horizontal y verticalmente, y por alguna razón el div color comienza en la parte superior de la tabla y terminado en la parte inferior. el color horizontal es tan amplio como el de la página, aunque. si me puse a la altura de decir 1200px, a continuación, se empieza en la parte superior de la mesa y va hacia abajo 1200px, por tanto, hay un espacio en blanco por encima de la mesa. la enfermedad post el css tengo que podrían ayudar.
    • El contenido después de la tabla antes de </div>?
    • No habrá cualquier otro contenido de su todo en la mesa. Por lo que el <div> abrir, a continuación, la tabla a continuación, la tabla se cierra a continuación, el div se cierra.
    • Usted necesita para mejorar su código de ejemplo que muestra esta información adicional. Creo que tu problema ahora es que no se trata de contentPlaceHolder, pero está a punto de generar un fondo de alrededor de un centrada en la tabla.
    • OK voy a agregar a todos en todo el pensamiento no hay mucho más para ver.

Dejar respuesta

Please enter your comment!
Please enter your name here