





El monstruo del cursor |
Los carteles que flotan |
<style>
#fijo {
background-color: #678;
border: 1px solid #234;
bottom: 20px;
color: #FFF;
font-size: 16px;
outline: 1px solid #CCC;
padding: 10px;
position: fixed;
left: 50%;
text-align: center;
text-shadow: 1px 1px 1px #000;
width: 300px;
z-index: 1;
}
#fijo a { /* depende de la imagen a usar */
display: block;
float: right;
height: 35px;
width: 35px;
}
</style>
<div id="fijo">
<a href="javascript:void(0);" onclick="document.getElementById('fijo').style.display='none';">
<img src="URL_IMAGEN" />
</a>
<p> ....... el contenido ....... </p>
</div>
Resumen de entradas con paginación usando JSON |
http://miblog.blogspot.com/feeds/posts/default?start-index=1&max-results=10&orderby=published&alt=json-in-script&callback=mifuncion
http://miblog.blogspot.com/feeds/posts/default?start-index=11&max-results=10&orderby=published&alt=json-in-script&callback=mifuncion
http://miblog.blogspot.com/feeds/posts/default?start-index=21&max-results=10&orderby=published&alt=json-in-script&callback=mifuncion http://miblog.blogspot.com/feeds/posts/default?start-index=31&max-results=10&orderby=published&alt=json-in-script&callback=mifuncion

postporpagina = 50; // es un dato que definimos nosotros cantidadposts = parseInt(json.feed.openSearch$totalResults.$t); // leemos la cantidad de entradas publicadas cantidadpaginas = parseInt(cantidadposts / postporpagina) + 1; // y calculamos la cantidad total de páginas
// estos son los datos que debemos establecer
var postporpagina = 60; // la cantidad de entradas a mostrar por página
var urlsitio = "http://miblog.blogspot.com"; // la url de nuestro blog
var minpaginas = 5; // la cantidad mínima de páginas a mostrar
var maxpaginas = 10; // la cantidad máxima de páginas a mostrar
var imgxdefecto = "http://xxxxxxxxxxx"; // la dirección de la imagen por defecto a ser utilizada
var firsttime = 0; // lo usamos para detectar la primera vez que se ejecuta
var paginaactual = 1; // contendrá el número de página donde estemos
var cantidadpaginas = 0; // contendrá el número total de páginas
var cantidadposts = 0; // contendrá el número total de entradas
// la función que interpreta los feeds y que siempre es más o menos la misma
function showpageposts(json) {
var entry, posttitle, posturl, postimg;
var salida = "";
// la primera vez que se ejecuta la función, leemos la cantidad de entradas que hay y calculamos la cantidad de páginas
if(cantidadpaginas==0) {
cantidadposts = parseInt(json.feed.openSearch$totalResults.$t);
cantidadpaginas = parseInt(cantidadposts / postporpagina) + 1;
}
// leemos los datos que luego mostraremos
for (var i = 0; i < postporpagina; i++) {
if (i == json.feed.entry.length) { break; } // si no hay más, salimos
entry = json.feed.entry[i];
// el título de las entradas
posttitle = entry.title.$t;
// buscamos la url de las entradas
for (var k = 0; k < entry.link.length; k++) {
if (entry.link[k].rel == 'alternate') {
posturl = entry.link[k].href;
break;
}
}
// buscamos la imagen de las entradas o usamos la que establecimos por defecto
if ("media$thumbnail" in entry) {
postimg = entry.media$thumbnail.url;
} else {
postimg = imgxdefecto;
}
// armamos el código HTML de salida de manera similar a lo que se veía en una <a href="http://vagabundia.blogspot.com/2010/12/usar-json-para-mostrar-las-entradas-del.html" target="_blank">entrada anterior</a>
salida += "<div class='paginaposts'>";
salida += "<a href='" + posturl + "' target='_blank'><img src='" + postimg + "' /></a>";
salida += "<h6><a href='" + posturl + "' target='_blank'>" + posttitle + "</a></h6>";
salida += "</div>";
}
// listo, ahora lo mostramos
document.getElementById("resultados").innerHTML = salida;
// y ejecutamos la función para paginar
paginacion();
}
// esta es la función que muestra la paginación
function paginacion() {
contadorP = 0;
salida = "";
// dependiendo de donde estamos, ponemos un enlace para retroceder o no
if(paginaactual>1) {
salida += "<a class='antesdespues' href='javascript:incluirscript(" + parseInt(paginaactual-1) + ")'>anterior</a>";
} else {
salida += "<span class='deshabilitado'>anterior</span>";
}
// se calcula y se muestran los números de las primeras páginas, una sepación y las últimas páginas
if (cantidadpaginas<(maxpaginas+1)) {
for (contadorP = 1; contadorP <= cantidadpaginas; contadorP++){
if (contadorP==paginaactual) {
salida += "<span class='actual'>" + contadorP + "</span>";
} else {
salida += "<a href='javascript:incluirscript(" + contadorP + ")'>" + contadorP + "</a>";
}
}
} else if(cantidadpaginas>(maxpaginas-1)) {
if(paginaactual<minpaginas) {
for (contadorP=1; contadorP<(maxpaginas-2); contadorP++){
if (contadorP == paginaactual) {
salida += "<span class='actual'>" + contadorP + "</span>";
} else {
salida += "<a href='javascript:incluirscript(" + contadorP + ")'>" + contadorP + "</a>";
}
}
salida += " ... ";
salida += "<a href='javascript:incluirscript(" + parseInt(cantidadpaginas-1) + ")'>" + parseInt(cantidadpaginas-1) + "</a>";
salida += "<a href='javascript:incluirscript(" + cantidadpaginas + ")'>" + cantidadpaginas + "</a>";
} else if(cantidadpaginas-(minpaginas-1)>paginaactual&&paginaactual>(minpaginas-1)) {
salida += "<a href='javascript:incluirscript(1)'>1</a>";
salida += "<a href='javascript:incluirscript(2)'>2</a>";
salida += " ... ";
for (contadorP=paginaactual-2; contadorP<=paginaactual+2; contadorP++) {
if (contadorP==paginaactual) {
salida += "<span class='actual'>" + contadorP + "</span>";
} else {
salida += "<a href='javascript:incluirscript(" + contadorP + ")'>" + contadorP + "</a>";
}
}
salida += " ... ";
salida += "<a href='javascript:incluirscript(" + parseInt(cantidadpaginas-1) + ")'>" + parseInt(cantidadpaginas-1) + "</a>";
salida += "<a href='javascript:incluirscript(" + cantidadpaginas + ")'>" + cantidadpaginas + "</a>";
} else {
salida += "<a href='javascript:incluirscript(1)'>1</a>";
salida += "<a href='javascript:incluirscript(2)'>2</a>";
salida += " ... ";
for (contadorP=cantidadpaginas-(minpaginas+1); contadorP<=cantidadpaginas; contadorP++) {
if (contadorP==paginaactual) {
salida += "<span class='actual'>" + contadorP + "</span>";
} else {
salida += "<a href='javascript:incluirscript(" + contadorP + ")'>" + contadorP + "</a>";
}
}
}
}
// dependiendo de donde estamos, ponemos un enlace para avanzar o no
if (paginaactual<contadorP-1) {
salida += "<a class='antesdespues' href='javascript:incluirscript(" + parseInt(paginaactual+1) + ")'>siguiente</a>";
} else {
salida += "<span class='deshabilitado'>siguiente</span>";
}
// mostramos el resultado
document.getElementById("paginacion").innerHTML = salida;
// y eventualmente, podemos mostrar la cantidad total
var iniciopagina = (paginaactual * postporpagina) - (postporpagina - 1);
var finalpagina = paginaactual * postporpagina;
var totales = "Total de entradas publicadas: " + cantidadposts + " - Mostrando entradas " + iniciopagina + " a " + finalpagina;
document.getElementById("totales").innerHTML = totales;
}
// esta es la función que escribe y ejecuta el script de manera dinámica
function incluirscript(pagina) {
// salvo que sea la primera vez, antes, borramos el script
if(firsttime==1) {removerscript();}
// borramos todo y mostramos algún mensaje de carga
document.getElementById("resultados").innerHTML = "<div id='loadingscript'>cargando ...</div>";
document.getElementById("paginacion").innerHTML = "";
document.getElementById("totales").innerHTML = "";
// calculamos el valor a colocar en start-index
var iniciopagina = (pagina * postporpagina) - (postporpagina - 1);
// y armamos la url del feed
var archivo = urlsitio + "/feeds/posts/default?start-index=" + iniciopagina;
archivo += "&max-results=" + postporpagina;
archivo += "&orderby=published&alt=json-in-script&callback=showpageposts";
// cargamos y ejecutamos el script de manera dinámica
var nuevo = document.createElement('script');
nuevo.setAttribute('type', 'text/javascript');
nuevo.setAttribute('src', archivo);
nuevo.setAttribute('id', 'TEMPORAL');
document.getElementsByTagName('head')[0].appendChild(nuevo);
// establecemos los nuevos datos
firsttime = 1;
paginaactual = pagina;
}
// esta es la función que elimina un script previamente agregado utilizando su ID
function removerscript() {
var el = document.getElementById("TEMPORAL");
var padre = el.parentNode;
padre.removeChild(el);
}
// ejecutamos la función por primera vez cuando se termina de cargar nuestro sitio
onload=function() { incluirscript(1); }<style>
#resultados { /* es el rectángulo del DIV donde se mostrarán */ }
#loadingscript { /* es el texto de "cargando" */ }
/* estas son las reglas de estilo para las entradas */
.paginaposts { /* cada rectángulo */
border: 1px solid #555;
float: left;
height: 35px;
margin: 1px;
padding: 5px;
width: 197px;
}
.paginaposts a { /* los enlaces */
color: #DDD;
display: block;
font-size: 11px;
text-decoration: none;
}
.paginaposts img { /* la imagen miniatura */
float: left;
height: 36px;
width: 36px;
}
.paginaposts h6 { /* el título de las entradas */
float: right;
height: 45px;
margin: 0;
width: 145px;
}
.paginaposts:hover { /* un efecto hover */
background-image: -moz-linear-gradient(100% 100% 90deg, #338, #33F);
background-image: -webkit-gradient(linear, left bottom, left top, from(#338), to(#33F));
filter:progid: DXImageTransform.Microsoft.Gradient(GradientType=0, StartColorStr='#FF3333FF', EndColorStr='#FF333388');
border: 1px solid #33F;
}
/* estas son las reglas de estilo para la paginación inferior */
#paginacion { /* el rectángulo contenedor */
color: #BBB;
font-family: Lucida Grande;
font-size: 24px;
font-weight: bold;
height: 35px;
line-height: 28px;
padding: 20px 0;
text-align: center;
}
#paginacion span, #paginacion a { /* cada número, texto o enlace */
border: 1px solid #444;
color: #BBB;
display: inline-block;
font-family: Lucida Grande;
font-size: 24px;
font-weight: bold;
margin: 0 2px;
padding: 0 5px;
-moz-border-radius: 2px;
-webkit-border-radius: 2px;
border-radius: 2px;
}
#paginacion span.actual { /* resaltamos la página actual */
color: #FFF;
padding: 0 5px;
-moz-box-shadow: 0 0 30px #DDD inset;
-webkit-box-shadow: 0 0 30px #DDD inset;
box-shadow: 0 0 30px #DDD inset;
}
#paginacion a:hover { /* efecto hover sobre los enlaces */
color: #FFF;
-moz-box-shadow: 0 0 20px #666 inset;
-webkit-box-shadow: 0 0 20px #666 inset;
box-shadow: 0 0 20px #666 inset;
}
#paginacion .antesdespues { border: none; }
#paginacion .antesdespues:hover {
-moz-box-shadow: none;
-webkit-box-shadow: none;
box-shadow: none;
}
#paginacion span.deshabilitado { /* los enlaces deshabilitados */
border: none;
color: #666;
}
/* la salida de la cantidad total */
#totales {text-align:center;}
</style><style> /* la reglas de estilo </style> <!-- cargo el script --> <script src="URL_miscript.js"></script> <!-- los divs contenedores --> <!-- aquí se mostrarán los posts --> <div id="resultados"> </div> <!-- elimino flotaciones --> <div style="clear:both;"> </div> <!-- aquí se mostrará la paginación --> <div id="paginacion"> </div> <!-- aquí se mostrará el texto con los totales --> <div id="totales"> </div>
Colocar texto alrededor de una imagen |
<div><img style="float: left;" src="URL_imagen" /> el texto a mostrar </div>
Cras tincidunt auctor metus in interdum. Nam semper varius est, sed pulvinar tellus dignissim vel. Fusce lobortis congue interdum. Morbi lobortis gravida rutrum. Fusce scelerisque fringilla diam, vitae viverra justo rhoncus auctor. Nullam metus purus; sollicitudin sit amet pulvinar ut, euismod at odio. Duis bibendum lacus nec velit posuere pulvinar. Praesent tristique elit a felis tincidunt eu dictum diam ultrices. Donec accumsan posuere accumsan? Maecenas condimentum vulputate ante ac egestas. Suspendisse et enim est, interdum dapibus metus. Nullam venenatis molestie rutrum.<div><img style="float: right;" src="URL_imagen" /> el texto a mostrar </div>
Cras tincidunt auctor metus in interdum. Nam semper varius est, sed pulvinar tellus dignissim vel. Fusce lobortis congue interdum. Morbi lobortis gravida rutrum. Fusce scelerisque fringilla diam, vitae viverra justo rhoncus auctor. Nullam metus purus; sollicitudin sit amet pulvinar ut, euismod at odio. Duis bibendum lacus nec velit posuere pulvinar. Praesent tristique elit a felis tincidunt eu dictum diam ultrices. Donec accumsan posuere accumsan? Maecenas condimentum vulputate ante ac egestas. Suspendisse et enim est, interdum dapibus metus. Nullam venenatis molestie rutrum.<style>
#contenedor-center {
margin: 0 auto;
text-align: center;
width: 620px;
}
#texto-L, #texto-R { width: 200px; }
#texto-L { float: left; text-align:right; }
#texto-R { float: right; text-align:left; }
</style>
<div id="contenedor-center">
<div id="texto-L">
<p> el texto a mostrar </p>
</div>
<div id="texto-R">
<p> el texto a mostrar </p>
</div>
<img src="URL_imagen" />
</div>Cras tincidunt auctor metus in interdum. Nam semper varius est, sed pulvinar tellus dignissim vel. Fusce lobortis congue interdum. Morbi lobortis gravida rutrum. Fusce scelerisque fringilla diam, vitae viverra justo rhoncus auctor. Nullam metus purus; sollicitudin sit amet pulvinar ut, euismod at odio. Duis bibendum lacus nec velit posuere pulvinar. Praesent tristique elit a felis tincidunt eu dictum diam ultrices. Donec accumsan posuere accumsan? Maecenas condimentum vulputate ante ac egestas. Suspendisse et enim est, interdum dapibus metus. Nullam venenatis molestie rutrum.
Aenean sollicitudin urna quis nibh ultricies rutrum. Pellentesque habitant morbi tristique senectus et netus et malesuada fames ac turpis egestas. Aenean nec commodo ligula. Ut eleifend, justo elementum tempor pharetra, eros nunc rhoncus nibh, nec eleifend tellus mi vitae mauris. Curabitur a mauris varius est bibendum iaculis? Nam in felis mauris. Cras odio dui, fermentum ac tincidunt in; condimentum non nulla. Proin convallis; lectus sit amet sollicitudin rutrum, sapien quam porta purus, et feugiat felis lacus id dui. Cras sed pretium quam.

<style>
#contenedor-center {
margin: 0 auto;
position: relative;
width: 620px;
}
#imagen-center {
position: absolute;
top: 0;
left:50%;
margin-left:-100px; /* el margen es la mitad del ancho de la imagen */
}
#texto-L, #texto-R { width: 49%; }
#texto-L { float: left; }
#texto-R { float: right; }
#texto-L:before, #texto-R:before {
content: "";
height: 300px; /* la altura es igual a la altura de la imagen */
width: 100px; /* el ancho es la mitad del ancho de la imagen */
}
#texto-L:before { float: right; }
#texto-R:before { float: left; }
</style>
<div id="contenedor-center">
<img id="imagen-center" src="URL_IMAGEN" />
<div id="texto-L">
<p> el texto a mostrar </p>
</div>
<div id="texto-R">
<p> el texto a mostrar </p>
</div>
</div>
Cras tincidunt auctor metus in interdum. Nam semper varius est, sed pulvinar tellus dignissim vel. Fusce lobortis congue interdum. Morbi lobortis gravida rutrum. Fusce scelerisque fringilla diam, vitae viverra justo rhoncus auctor. Nullam metus purus; sollicitudin sit amet pulvinar ut, euismod at odio. Duis bibendum lacus nec velit posuere pulvinar. Praesent tristique elit a felis tincidunt eu dictum diam ultrices. Donec accumsan posuere accumsan? Maecenas condimentum vulputate ante ac egestas. Suspendisse et enim est, interdum dapibus metus. Nullam venenatis molestie rutrum.
Aenean sollicitudin urna quis nibh ultricies rutrum. Pellentesque habitant morbi tristique senectus et netus et malesuada fames ac turpis egestas. Aenean nec commodo ligula. Ut eleifend, justo elementum tempor pharetra, eros nunc rhoncus nibh, nec eleifend tellus mi vitae mauris. Curabitur a mauris varius est bibendum iaculis? Nam in felis mauris. Cras odio dui, fermentum ac tincidunt in; condimentum non nulla. Proin convallis; lectus sit amet sollicitudin rutrum, sapien quam porta purus, et feugiat felis lacus id dui. Cras sed pretium quam.
Transiciones, sliders y slideshows |
<div id="demoANIM1">
<div id="demoANIM1imagenes">
<img src="URL_IMAGEN1" />
<img src="URL_IMAGEN2" />
<img src="URL_IMAGEN3" />
<-- agregamos todas las que se nos ocurran (en el ejemplo hay siete) -->
<img src="URL_IMAGEN7" />
</div>
</div><div id="demoANIM1links"> <a onclick="srcdemoANIM1(0);" href="javascript:void(0);">1</a> <a onclick="srcdemoANIM1(1);" href="javascript:void(0);">2</a> <a onclick="srcdemoANIM1(2);" href="javascript:void(0);">3</a> <-- agregamos un enlace para cada una de las imágenes --> <a onclick="srcdemoANIM1(6);" href="javascript:void(0);">7</a> </div>
<style>
#demoANIM1 { /* es el DIV contenedor */
/* lo dimensiono del mismo tamaño que la imagen (en este ejemplo de 500x375) */
height: 375px;
width: 500px;
margin: 0 auto; /* lo centro */
overflow: hidden; /* impido que se deborde */
position: relative; /* establezco esta propiedad para poder ubicar las imágenes de manera absoluta */
}
#demoANIM1imagenes { /* es el contendor interno donde están las imágenes */
/* lo fijo arriba */
position:absolute;
left: 0;
top: 0;
/* le digo que su ancho es igual a la suma del ancho de todas imágenes */
width: 3500px; /* 500 * 7 = 3500 */
/* y le digo que cualquier cambio sea animado */
-moz-transition:all 1s ease-in-out;
-webkit-transition:all 1s.ease-in-out;
-o-transition:all 1s.ease-in-out;
transition:all 1s ease-in-out;
}
#demoANIM1imagenes img { /* fuerzo a que las imágenes se vean todas iguales */
height: 375px;
width: 500px;
}
/* y le pongo un poc de estilo a los numeritos que sirven de enlace */
#demoANIM1links {
border-bottom: 1px solid #345;
margin: 0 auto;
padding: 10px 0;
text-align: center;
width: 500px;
}
#demoANIM1links a {
background-color: #345;
border-radius: 4px 4px 4px 4px;
box-shadow: 0 0 4px #ABC inset;
margin: 0 2px;
padding: 4px 8px;
}
#demoANIM1links a:hover {
box-shadow: 0 0 8px #ABC inset;
color: #FFF;
}
</style><script>
//<![CDATA[
function srcdemoANIM1(num) {
var mover = num * 500;
document.getElementById("demoANIM1imagenes").style.left = -mover + "px";
}
//]]>
</script>






El atributo border=0 |
<div class="separator" style="clear: both; text-align: center;">
<a href="http://......./s1600/........" imageanchor="1" style="margin-left: 1em; margin-right: 1em;">
<img border="0" height="xxx" src="http://......./sxxx/........" width="xxx" />
</a>
</div>a:link {
color:$linkcolor;
text-decoration:none;
}
a:visited {
color:$visitedlinkcolor;
text-decoration:none;
}
a:hover {
color:$titlecolor;
text-decoration:underline;
}
a img {
border-width:0;
}a:link, a:visited {
color: #FF0;
outline: none;
text-decoration:none;
}
a:hover {
color: #F0F;
outline: none;
text-decoration:none;
}
a img {
border: none;
}.post img {
border:4px outset #940f04 ;
padding:4px;
}.separator {
.......
}
.separator img {
.......
}
.separator img:hover {
.......
}.separator img {
background-color: #EEE;
border: 5px solid #ABC;
height: 100px;
outline: 1px solid #DDD;
padding: 5px;
width: 100px;
}Buenos Aires
Argentina
Nacido en el tercer mundo. Un santo varón. Buenos Aires. Los elefantes. Las golondrinas de Plaza de Mayo. Me chupo el dedo.
El tiempo es veloz. ¿No ves que ya no somos chiquitos? Despedida de la infancia. Todo es efímero. Juguetes perdidos. Dime quién me lo robó. Aprendizaje.
Soy un hippie. Rutas argentinas. Sobredosis de TV. Raros peinados nuevos. Más de cien mentiras. Delirium tremens.
Ciudad de pobres corazones. El karma de vivir al sur. Mundo de quimeras. Oh Dios, ¿Qué puedo hacer?
Cuando era más joven. Los mayores del mundo. Botas locas. Rejas electrificadas. Cerca de la revolución. Contra todos los males de este mundo. La casa desaparecida. Tumbas de la gloria. Vencedores vencidos. Carguen, apunten, fuego. Estás frito angelito. A lo mejor aún te acuerdas.
Ah, te vi entre las luces. Muchacha. Amor se llama el juego. Juego de seducción. Mi genio amor. Prométeme que nunca me dirás adiós. Pequeñas delicias de la vida conyugal. Toda la vida tiene música hoy. Es hora de levantare, querido (dormiste bien?).
Resumiendo.
Mi sueño de hoy. La sed verdadera. La búsqueda de la estrella. Todos juntos. ¡Ah! Basta de pensar.
Esto es to-to-todo amigos.
| CONTRAER ARCHIVOS |
|
