2012-02-27 25 views
8

Parece que estoy un poco desactualizado en la creación de sitios web.¿Cuáles son los nuevos marcos?

Hace algunos años aprendí a crear sitios web simples con marcos.

Sin embargo, esta solución no es recomendada por w3school.com y los marcos ya no son compatibles en futuras versiones de HTML.

¿Cuáles son los reemplazos simples?

  • iFrames también parecen ser desalentado por la mayoría de los desarrolladores de PHP
  • parece proporcionar una solución? ¿Cuál es una forma simple en php para reemplazar marcos?
  • si no estoy usando php (en realidad necesito usar JavaEE en un proyecto), ¿cómo puedo crear sitios web con marcos?

Corto: ¿Cómo crear un sitio web atractivo (en forma de marco) hoy en día?

+0

Depende. ¿Estás usando un lenguaje de servidor (Python, PHP, Ruby, etc.) o estás trabajando con HTML puro? – Blender

+0

¿Cuáles fueron sus usos para los marcos? ¿Qué hicieron por ti? – Oded

+0

Puede encontrar una buena discusión sobre esto en http://stackoverflow.com/questions/4846019/any-way-of-using-frames-in-html5 – synthesizerpatel

Respuesta

14

En términos generales:

visualmente

CSS. Hay numerosos techniques para el contenido de colocación (dependiendo del efecto preciso que desee, Holy Grail es un deseo común).

The overflow properties mango desplazamiento subsecciones de páginas, aunque los diseñadores que piensan que tener un menú utilizando espacio en la pantalla todo el tiempo es una buena idea son por lo general mal.

Evitar la duplicación de metacontent

(es decir, poner las cosas como la estructura básica, menús de navegación, etc., en cada página sin copiar/pegar ellos)

Un sistema de plantillas (o un sistema de incluir) que, o bien ejecuta el lado del servidor (más común) o en tiempo de compilación (que puede admitir servidores HTTP que solo permiten archivos estáticos).

El lenguaje en el que está implementado es irrelevante, PHP es tan común como muck, Java es una opción, me inclino por Perl (y más específicamente: Template Toolkit), hay muchos otros.JavaScript se está volviendo cada vez más popular para este tipo de trabajo, con herramientas como assemble que están disponibles.

Utilice un motor de búsqueda para encontrar lenguajes de plantilla populares o incluir sistemas para su lenguaje de programación de elección.

Cargando nuevos contenidos sin salir de la página de

JavaScript, por lo general con el XMLHttpRequest objeto (la técnica se conoce como Ajax), y (si es que está haciendo cambios en el contenido graves) que se utilizan en combinación con the History API (tan marcadores y la vinculación todavía funciona). Github son a good example of this. Existen varios frameworks como Angular que intentan facilitar las cosas. Nota limited browser support y todas las otras cosas que pueden causar que JS archive marcas usando good design principles essential. Un enfoque para robustecer estas cosas es escribir Isomorphic JS.

+1

¿Cómo cambiar el "marco de contenido" pasado de un lado y luego dejar el "marco de navegación" tal como está, sin escribir código duplicado, entonces? Todavía veo sitios web hoy en día con estos dos componentes (tal vez hay otras palabras para él ahora) – ctekk

+0

@ Coretek - Ver las dos secciones de mi respuesta con la etiqueta "Evitando la duplicación de metacontent" y "Cargando contenido nuevo sin salir de la página" – Quentin

+0

Ok, Entiendo que estos idiomas del lado del servidor se utilizan para ello, pero ¿cómo lo haces con ellos? ¿Cómo se crea un método (java speaking) que elimina elementos y coloca nuevos elementos? – ctekk

4

Los marcos no se reemplazan por una nueva "tecnología". El estado del arte es poner todo el contenido en el mismo documento y estilo a través de CSS. Por supuesto, el lado del servidor incluye puede ayudarte a hacer esto.

2

Utilice CSS positioning para crear una interfaz tipo marco y AJAX para cambiar el contenido de un contenedor. Puede usar marcos de JavaScript como jQuery, Prototype o MooTools para manejar las solicitudes de AJAX.

Sin embargo, si desea incluir contenido de otro dominio, debe usar un , ya que AJAX sigue un same origin policy.

Si desea escribir DRY (no se repita), podría utilizar algún tipo de sistema de plantillas (PHP, Ruby, Pearl, Python, y por supuesto un marco para estos idiomas).

Cuestiones relacionadas