Pregunta

He estado buscando altas y bajas para una respuesta satisfactoria a esta y han fracasado. Espero stackoverflow puede entregar para mí!

Estoy utilizando SharePoint Foundation 2010 (mi primer intento real de inmersión profunda en SharePoint), con (entre otras cosas) una parte web personalizado; la página principal del sitio web utiliza un archivo CSS suministrado por el cliente ya la que debe adherirse. El problema que estoy teniendo es que SharePoint, mediante la adición de varias clases CSS SharePoint específicos a la estructura HTML pieza de la tela, está en conflicto con el estilo del cliente. Después de algo de investigación, he encontrado que la clase ms-WPBody y sus diversos selectores de elementos son los principales culpables.

Me podría añadir !important a todo en la hoja de estilo del cliente, pero que es prohibido. Podría insertar algún estilo muy desordenado en el contenido secundario de la pieza de la tela en un intento de anular el estilo de SharePoint, que es el supuesto que he estado siguiendo en los últimos tiempos, pero ha sido ensuciarse. O, podría tratar de eliminar la clase de la pieza de la tela, lo que me lleva a mi pregunta:

¿Cómo ¿Puedo eliminar o reemplazar los nombres de clases CSS insertados en la estructuración HTML para una parte web de SharePoint? No sé lo suficiente sobre el funcionamiento interno de SharePoint para saber qué gancho para realizar este cambio, y mi google-fu es a prueba sobre el tema. CssClass en el marcado de control web ASP.NET está obviamente ignorada, probablemente algún vestigio heredado de WebControl.

Me ayudan Stackoverflow! Eres mi única esperanza!

Editar
Me disculpo por no dejar claro antes, pero me gustaría estado que asimilo CSS y no estoy buscando ayuda con el peinado. Lo que realmente estoy buscando es cómo eliminar la clase CSS emitida por SharePoint. ¿Alguien puede ayudar allí? Voy a quitar la etiqueta CSS, ya que parece estar confundiendo a la gente. Esta pregunta no es realmente acerca de CSS, se trata de SharePoint.

¿Fue útil?

Solución

CSS tiene que coincidir con el código HTML que se aplica a - con html generado como la producida por SharePoint (o formularios web ASP.NET estándar para el caso) por lo general es mucho más fácil de modificar el CSS. Si la adición importante no es una opción por lo general puede hacer algo con los selectores más específicos - es decir, un estilo definido como "td mesa" anulará uno para "TD", aunque en realidad seleccionar todos los mismos elementos. Puede utilizar este método para deshacer los trozos de estilo de SharePoint que son cuestiones causign.

Si realmente quiere cambiar las clases de SharePoint pone en la página, el uso de jQuery - tratando de hacer que el servidor es realmente no es algo que desea conseguir en su primer proyecto en SharePoint

.

Otros consejos

No estoy seguro de entender, pero ¿por qué no envolver su parte web en un div contenedor y luego estilo al contenido de su corazón:

<style type="text/css">
.ms-WPBody {
background-color:red;
}

#myCustomCss p
{
    background-color:Blue;
}

</style>
<div class=ms-WPBody>
<div id=MyCustomCSS>
<p>Hello world</p>
</div>
</div>

En 2007, tuvo que preocuparse de hacer que su hoja de estilo fue nombrado última orden alfabético para que se aplicó correctamente. Prefijar su archivo css con z para ver si ayuda.

He aquí un artículo de referencia sobre el tema: http: // singchan.com/2009/12/29/branding-sharepoint-2010-collaboration-sites-part-2-in-a-series/

Aquí hay algunos típicos Parte Web HTML:

<div style=""
    allowexport="false"
    allowdelete="false"
    class="ms-WPBody ms-wpContentDivSpace"
    width="100%"
    id="WebPartctl00_m_g_d0420a1c_44b7_4009_81c9_2bbcf9b325e9"
    haspers="false"
    webpartid="d0420a1c-44b7-4009-81c9-2bbcf9b325e9">
    <div id="ctl00_m_g_d0420a1c_44b7_4009_81c9_2bbcf9b325e9">
        Web Part Content goes here...
    </div>
</div>

El truco es que el elemento Web en sí es el DIV interior (y todos sus hijos). El DIV exterior (la que tiene la clase ms-WPBody) es el WebPartZone . Este control está sellado, pero se puede escribir un adaptador que dejará al WebPartZone lo que le apetezca. La mayoría de los ejemplos href="http://www.google.com/search?q=Sharepoint+WebPartZone+Adapter" rel="nofollow"> son para la representación sin tablas, se podría escribir una que mantiene la estructura existente, pero elimina las clases.

Para mí, la codificación de todo eso y luego registrarlo en el compat.browser de App_Browsers para la aplicación web parece un exceso, por lo que probablemente me vaya con jQuery (pero si lo hace el adaptador, me gustaría ver IT).

O simplemente añadir un elemento web Editor de contenido y anular el elemento de estilo CSS en el HTML:

<style type="text/css">
.ms-stylebox {
 border:o important;
}
</style>

- Paz

¿cómo se Carga de archivos CSS? Si va a cargar en parte de la cabecera de la página principal, oa través de sólo la creación de un custom.css, se puede tratar de cargarlo exterior de la cabeza. Esto debería hacer que se cargue después de core.css y por lo tanto permitirle hacer prevalecer las clases estándar, según sea necesario.

scroll top