Foros aprenderaprogramar.com

Aprender a programar => Aprender a programar desde cero => Mensaje iniciado por: ANGEL44 en 02 de Septiembre 2014, 00:27

Título: mover texto fuera de un bloque por ambos lados en css
Publicado por: ANGEL44 en 02 de Septiembre 2014, 00:27
quisiera saber ¿cómo puedo hacer que el texto del bloque 1 pueda salir por ambos extremos de su borde delimitado?
Código: [Seleccionar]
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<title>Curso desarrollo aplicaciones móbiles</title>
<meta charset="utf-8">
<style type="text/css">
*{font-family:arial;}
body{width:800px; border-style:solid; border-color:#DCDCDC; border-width:15px; background-color:#FFAF0; margin:250px 0 0 500px;}
div{margin:15px;}
#cabecera{border-color:red; background-color:#696969; margin:0 15px 15px 15px;}
h1{color:#FF0000; position:relative; left:15px; top:10px;}
h4{color:#F8F8FF; position:relative; left:15px; bottom:15px;}
#columna{width:200px; background-color:#808080; float:right; margin:0 15px 15px 15px;}
#texto{width:550px; margin:15px; padding:3px; background-color:#DCDCDC;}
#bloque{border-style:dotted; border-color:#F8F8FF; border-width:5px; margin:15px; padding:0;}
#pie{border-color:blue; background-color:#696969; color:#F8F8FF; padding:3px;}
#parrafo{position:relative; left:15px;}
</style>
</head>
<body>
<div id="cabecera">
<h1>CABECERA</h2>
<h4>Subtítulo de la cabecera</h3>
</div>
<div id="columna">
<p id="parrafo">Esta es la columna de la derecha</p>
</div>
<div id="texto">
<p id="bloque">Esto es Bloque 1.Esto es Bloque 1.Esto es Bloque 1.Esto es Bloque 1.Esto es Bloque 1.Esto es Bloque 1.Esto es Bloque 1.</p>
<p id="bloque">Esto es Bloque 2</p>
</div>
<div id="pie">
<p id="parrafo">Esto es el pie de página</p>
</div>
</body>
</html>
Título: Re:mover texto fuera de un bloque por ambos lados en css
Publicado por: Mario R. Rancel en 02 de Septiembre 2014, 08:17
Hola, para pegar código pulsa por favor el botón # que encuentras en la parte superior del editor del foro, púlsalo y luego pega el código entre las etiquetas [ code ] ... [ / code] que te aparecerán.
Título: Re:mover texto fuera de un bloque por ambos lados en css
Publicado por: Mario R. Rancel en 02 de Septiembre 2014, 08:33
Sobre la cuestión que consultabas, no me queda claro qué es lo que pretendes hacer (si adjuntas una imagen indicando cómo quieres que quede se verá más claro). Para que el texto desborde el contenedor tendrá que tener delimitados anchura (width) y altura (height) según quieras que estos parámetros sean valores determinados. Ahora mismo el width lo tienes delimitado porque el bloque 1 está dentro de <div id="texto"> que tiene un width delimitado.

El desbordamiento sólo se producirá cuando el texto exceda el espacio disponible en el contenedor y lo puedes controlar con la propiedad overflow y sus variantes. Aquí tienes la referencia: http://aprenderaprogramar.com/index.php?option=com_content&view=article&id=743:overflow-css-scroll-overflow-x-overflow-y-propiedad-visibility-visible-hidden-collapse-ejemplos-cu01038d&catid=75:tutorial-basico-programador-web-css-desde-cero&Itemid=203

El texto al estar dentro de un contenedor por la propia concepción de CSS tiende a permanecer dentro de su contenedor.

Otra propiedad con la que puedes controlar el comportamiento del texto y crear un efecto desbordamiento es white-space: la referencia la tienes en http://aprenderaprogramar.com/index.php?option=com_content&view=article&id=745:css-text-align-color-text-decoration-text-indent-white-space-nowrap-pre-pre-wrap-pre-line-cu01040d&catid=75:tutorial-basico-programador-web-css-desde-cero&Itemid=203

Saludos!!!
Título: Re:mover texto fuera de un bloque por ambos lados en css
Publicado por: ANGEL44 en 02 de Septiembre 2014, 09:42
gracias, Mario. Perdona por editar el código sin las especificaciones del foro, no me acordé de cómo se hacía. Voy a probar con las explicaciones que me han dado y si no consigo lo que pretendo, lo comento en el foro.
Título: Re:mover texto fuera de un bloque por ambos lados en css
Publicado por: ANGEL44 en 02 de Septiembre 2014, 10:10
Hola otra vez Mario:
Esto es lo que pretendo que salga. Te adjunto una imagen
http://pruebasonline.deustoformacion.com/Data/Pildoras/Medias/00000004/i_3275.jpg (ftp://pruebasonline.deustoformacion.com/Data/Pildoras/Medias/00000004/i_3275.jpg)
Título: Re:mover texto fuera de un bloque por ambos lados en css
Publicado por: ANGEL44 en 02 de Septiembre 2014, 10:12
este es el código que he creado:
Código: [Seleccionar]
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<title>Curso desarrollo aplicaciones móbiles</title>
<meta charset="utf-8">
<style type="text/css">
*{font-family:arial;}
body{width:800px; border-style:solid; border-color:#DCDCDC; border-width:15px; background-color:#FFAF0; margin:250px 0 0 500px;}
div{margin:15px;}
#cabecera{border-color:red; background-color:#696969; margin:0 15px 15px 15px;}
h1{color:#FF0000; position:relative; left:15px; top:10px;}
h4{color:#F8F8FF; position:relative; left:15px; bottom:15px;}
#columna{width:200px; background-color:#808080; float:right; margin:0 15px 15px 15px;}
#texto{width:550px; margin:15px; padding:3px; background-color:#DCDCDC;}
#bloque{border-style:dotted; border-color:#F8F8FF; border-width:5px; margin:15px; padding:0;}
#pie{border-color:blue; background-color:#696969; color:#F8F8FF; padding:3px;}
#parrafo{position:relative; left:15px;}
</style>
</head>
<body>
<div id="cabecera">
<h1>CABECERA</h2>
<h4>Subtítulo de la cabecera</h3>
</div>
<div id="columna">
<p id="parrafo">Esta es la columna de la derecha</p>
</div>
<div id="texto">
<p id="bloque">Esto es Bloque 1.Esto es Bloque 1.Esto es Bloque 1.Esto es Bloque 1.Esto es Bloque 1.Esto es Bloque 1.Esto es Bloque 1.</p>
<p id="bloque">Esto es Bloque 2</p>
</div>
<div id="pie">
<p id="parrafo">Esto es el pie de página</p>
</div>
</body>
</html>
Título: Re:mover texto fuera de un bloque por ambos lados en css
Publicado por: ANGEL44 en 02 de Septiembre 2014, 10:24
en resumen lo que pretendo es crear:
crear un documento html con una página centrada de 800 píxeles.
Cabecera y pie de página que ocupen todo el ancho y cuyas alturas se ajusten al contenido.
Distancia entre elementos de 15 píxeles.
Una columna a la derecha de 200 píxeles de ancho.
El primer bloque de texto simulará texto saliendose por ambos lados de la caja.
Los bloques tendrán un borde de 5 píxeles.
Título: Re:mover texto fuera de un bloque por ambos lados en css
Publicado por: dongo en 02 de Septiembre 2014, 10:26
Yo sigo sin entender lo que quiere hacer... pero si le pones al elemento #bloque un margin-left  y un margin-right negativos... entonces se sale por los lados, pero no le veo sentido a esto... en fin intenta ser mas especifico, un saludo!!

sabes hacer una imagen con paint? Sería mucho mas ilustrativo....Un saludo!!

perdón: pero mande el mensaje a la vez creo y por eso no vi el post de la imagen....
Título: Re:mover texto fuera de un bloque por ambos lados en css
Publicado por: Mario R. Rancel en 02 de Septiembre 2014, 11:06
Hola, el link de la imagen no responde bien, pero cambiando ftp:// por http:// sí he logrado verlo.

No entiendo muy bien cuál es el objetivo, pero aquí te dejo un código para desplazar un texto fuera de su contenedor, en este caso usando dos div, uno externo para envolver y otro interno que se desplaza con el texto, no sé si te servirá

Código: [Seleccionar]
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<title>Curso desarrollo aplicaciones móbiles</title>
<meta charset="utf-8">
<style type="text/css">
*{font-family:arial;}
body{width:800px; border-style:solid; border-color:#DCDCDC; border-width:15px; background-color:#FFAF0; margin:250px 0 0 500px;}
div{margin:15px;}
#cabecera{border-color:red; background-color:#696969; margin:0 15px 15px 15px;}
h1{color:#FF0000; position:relative; left:15px; top:10px;}
h4{color:#F8F8FF; position:relative; left:15px; bottom:15px;}
#columna{width:200px; background-color:#808080; float:right; margin:0 15px 15px 15px;}
#texto{width:550px; margin:15px; padding:3px; background-color:#DCDCDC;}
.bloque{border-style:dotted; border-color:#F8F8FF; border-width:5px; margin:15px; padding:0;}
#pie{border-color:blue; background-color:#696969; color:#F8F8FF; padding:3px;}
#parrafo{position:relative; left:15px;}
.hazDeFondo {position: relative; width: 100%; height:50px; background-color:blue; margin-left:-40px; }

</style>
</head>
<body>
<div id="cabecera">
<h1>CABECERA</h2>
<h4>Subtítulo de la cabecera</h3>
</div>
<div id="columna">
<p id="parrafo">Esta es la columna de la derecha</p>
</div>
<div id="texto">
<div class="bloque">
<div class="hazDeFondo">Esto es Bloque 1.Esto es Bloque 1.Esto es Bloque 1.Esto es Bloque 1.Esto es Bloque 1.Esto es Bloque 1.Esto es Bloque 1.</div>
</div>
<div class="bloque">Esto es Bloque 2</div>
</div>
<div id="pie">
<p id="parrafo">Esto es el pie de página</p>
</div>
</body>
</html>
Título: Re:mover texto fuera de un bloque por ambos lados en css
Publicado por: ANGEL44 en 03 de Septiembre 2014, 00:57
muchas gracias por la ayuda prestada.