2008-12-12 10 views
6

¿Cómo se corrige el uso del marco en una página asp.net, entonces tengo un marco izquierdo y un marco derecho, cuando hago clic en los enlaces en la página presentada en el marco izquierdo, carga la página correspondiente en el marco derecho? Además de esto, necesito tener una página maestra en todas las páginas del marco correcto.¿Cómo uso el marco en la página ASP.NET?

¿Cómo puedo hacer esto? o hay otra forma de lograr el mismo efecto?

Gracias, Ray.

Respuesta

3

Los marcos son generalmente mal visto en el desarrollo web moderno por algunas razones (no entraré en ellos aquí). Es mejor que uses CSS para hacer un diseño de 2 columnas. Hay muchos buenos tutoriales sobre cómo hacer diseños como este en toda la web. Un ejemplo se puede encontrar aquí:

http://www.456bereastreet.com/lab/developing_with_web_standards/csslayout/2-col/

El ejemplo en ese sitio se parece a esto:

http://www.456bereastreet.com/lab/developing_with_web_standards/csslayout/2-col/finished.html

Si desea que el diseño para que quepa en la pantalla, simplemente define una altura de #main. Sólo tiene que añadir esto a tu CSS después de que haya terminado:

#main{height:600px} 

cambiar el "600px" a cualquier altura deseada si no se ajusta para usted.

para usarlo en una página maestra, al igual que su página maestra sigue el ejemplo de arriba, y luego hacer que el interior de la etiqueta de su #main<div /> ContentPlaceHolder primaria

+0

Una cosa que no pude entender con el diseño de columna CSS div 2 es ¿cómo se obtiene la altura de las columnas para corregir exactamente en el navegador? –

+0

Eso es realmente un problema muy común. La solución es un poco más avanzada, pero se puede resolver. Vaya aquí para ver cómo: http://www.alistapart.com/articles/fauxcolumns/ –

+0

Yay a la imagen bg falsa. ¿Es triste que reconozca ese vínculo de hace años? – Min

0

La respuesta corta y dulce?

Los marcos y conjuntos de marcos ya no son necesarios o útiles en el desarrollo web, y crean muchos más problemas de los que resuelven.

En más detalle:

Hay tres cosas que es probable que el uso de marcos para ayudar con:

1) ¿Quieres tener una barra de navegación a la izquierda, y tienen un contenido independiente área a la derecha, separación básicamente vertical.

solución para no fotograma:

uso de HTML y CSS para crear un diseño de 2 columnas. Vea algunos de los otros recursos o "The Last Guide to CSS Layout You'll Ever Need".

2) Desea poder tener un archivo con la navegación que no tenga que tener una versión en varias páginas diferentes.

solución para no fotograma:

Mantener la navegación en un archivo separado, y justo incluirlo en todas sus páginas de contenido. En ASP.NET, puede crear un UserControl o archivo .ascx e incluirlo en todos sus cambios. Ponga su navegación en UserControl y solo necesita cambiarla en un solo lugar.

3) Desea obtener un rendimiento más rápido de solo el cuadro de contenido que necesita volver a cargar, y no el marco de navegación.

solución para no fotograma:

El tiempo extra para cargar toda la página es insignificante, y la simplicidad de servir a un solo documento en un momento más que compensa por el desempeño pequeña éxito.

5

Sí. Los marcos son malvados Realmente no deberías usarlos.

Causan problemas, pero en un (muy) pocos casos extremos pueden ser útiles y más baratos en términos de tiempo de desarrollo, todavía aparecen bastante en la documentación de api generada.

Pero de todos modos, ya que la forma en que pidió a usarlos, aquí vamos

En primer lugar, depende de si desea utilizar un conjunto de marcos, o simplemente poner algunos marcos flotantes en una página, iframes tal vez más fácil , pero describirá un conjunto de marcos. Algunas referencias a continuación. Si explora la máquina de retorno en archive.org, verá algunos ejemplos, también los documentos en línea Java de Sun solían estar en conjuntos de marcos, pero no los han examinado durante años.

http://www.w3schools.com/tags/tag_frameset.asp
http://www.w3schools.com/tags/tag_iframe.asp

Básicamente, el contenido de cada cuadro son páginas individuales, y los marcos mismos deben ser identificado, dentro del archivo que contiene el conjunto de marcos, lo que podría parecer un poco como esto:

<html> 
<frameset cols="25%,75%"> 
    <frame name="_left" src="nav.aspx" /> 
    <frame name="_right" src="foo.aspx" /> 
</frameset> 
</html> 

Por lo tanto, para el ejercicio, proporcione el nombre del atributo de marco izquierdo = "__ izquierda" y el nombre = "__ derecha" para la derecha.

trozos importantes sobre enlaces
Cualquier enlace dentro de su marco derecho que hay que apuntar que el marco debe tener target = "_self", y cualquier que necesitan para escapar del marco y establecer la ubicación de la página principal, debería tener target = "_ top".

Los enlaces en su marco izquierdo necesitarán tener el atributo target = "_ right", y eso debería cargar el documento apropiado en el marco derecho cuando se hace clic en el enlace.

El resto es bastante normal, trate el contenido del marco de la mano derecha como una página normal, haga una página maestra como normal, todas las etiquetas html, cabeza, cuerpo normales etc. No hay nada realmente diferente sobre marcos en aspnet o php o cualquier otra cosa, es solo html.

Ahí lo tiene, puede haber algunas cosas que me he perdido, porque no son algo que uso muy a menudo en estos días, pero a veces, cuando la accesibilidad y todo lo que no importa, pueden ser rápidos y solución sucia. por ejemplo, una página de administración oscura en un sitio de servicio web, que será visitada 12 veces al año por un geek que entiende lo que está sucediendo.

Por lo tanto, son malvados, pero eso no debe impedir que aprendas sobre ellos, entenderás realmente por qué son malvados y formarás tu propia opinión sobre cuándo y cuándo no usarlos.

0

puede poner el código iframe en la sección del cuerpo.un ejemplo dado a continuación. intente esto :)

<iframe width="100%" height="600px" scrolling="no" seamless="yes" src="https://facebook.com"></iframe> 
Cuestiones relacionadas