Entradas en la categoría: CSS

Todo listo para el “CSS Naked Day”

CSS Naked Day, es un evento que se realiza cada 5 de abril y tiene como objetivo promover el uso de estándares web.

Para participar, lo único que tienen que hacer es quitar todas las hojas de estilo y dejar que se muestre sólo la estructura de vuestros sitio. Si utilizan Wordpress y quieren formar parte de este evento, puedes utilizar el siguiente plugin:

<?php
/*
Plugin Name: CSS Naked Day
Plugin URI: http://www.buayacorp.com/
Description: Elimina todas las hojas de estilo definidas en la cabecera del tema que actualmente usas.
Author: Alexander Concha
Version: 1.0
Author URI: http://www.buayacorp.com/
*/
function is_naked_day() {
	return '0405' == mysql2date('md', current_time('mysql'));
}
function css_naked_stylesheet($stylesheet_uri) {
	if (is_naked_day()) {
		return '';
	}
	return $stylesheet_uri;
}
function css_naked_head() {
	if (is_naked_day()) {
		$header = ob_get_contents();
		ob_end_clean();
		
		$header = preg_replace('|<link.*?rel="stylesheet"[^>]*>|is', '', $header);
		$header = preg_replace('|<style[^>]*>.*?</style>|is', '', $header);
		
		print $header;
	}
}
add_filter('stylesheet_uri', 'css_naked_stylesheet');
add_filter('wp_head', 'css_naked_head', 100);
?>

Lamentablemente el código mostrado no elimina el CSS generado por otros plugins, así que hay que modificar manualmente éstos -pueden usar la función is_naked_day para determinar si es el día indicado o no ;)

Actualización: Sergio publicó una versión más genérica, pero usando javascript.

The people’s toolbox

ThePeoplesToolbox, es una página que agrupa un conjunto de sitios que ofrecen recursos o tratan sobre desarrollo web (íconos, fuentes, imágenes, tutoriales, colores, etc.

Validación de datos - Solución

Continuando con la serie, ¿qué cosas se tienen que cumplir para que el siguiente código sea vulnerable a XSS?

<?php
/* Evitar XSS a través de otros formatos */
header('Content-type: text/html; charset=utf-8;');

$color = '000';
if ( !empty($_GET['color']) ) {
	$color = htmlentities(strip_tags($_GET['color']));
}


?>
<html>

<head>
	<title>Anti XSS Page :D</title>
	<style type="text/css">
	#demo {
		width: 100%;
		height: 50px;
		background: #<?php echo $color;  ?>;
	}
	</style>
</head>

<body>

<div id="demo">

</div>

</body>

</html>

Continúa leyendo »

Controles Personalizados en ASP.NET - Parte 2

En la entrada anterior, vimos como extender el control TextBox (del .NET Framework) para restringir la entrada a sólo ciertos caracteres definidos en una expresión regular. Pues bien, en esta ocasión vamos a crear un control que ayudará a medir la popularidad de algún artículo o comentario.

Para la apariencia del control, tomé como base “CSS Star Rating”, el cuál incluye una hoja de estilos y una imagen. Como ya había comentado en la entrada anterior, para hacer uso de estos elementos es necesario registrarlos y compilarlos, a continuación se muestra la forma de hacerlo:

Continúa leyendo »

Soporte de CSS en clientes de correo

Es cierto que muchos de nosotros odiamos algunos mensajes en el correo electrónico, publicidad, ofertas, invitaciones a redes sociales (éstos están de moda) y un largo etcétera ya que generálmente éstos vienen en formato HTML, pero también es cierto que muchos diseñadores o programadores han tenido alguna vez que enviar cierto boletín o newsletter de la empresa en que trabajamos, y hemos tenido que golpearnos la cabeza contra el monitor para lograr que se vean bien en ciertos clientes de correo sean web o de escritorio.

En Campaign Monitor, nos presentan una Guía de Soporte de CSS en el correo electrónico; donde nos muestran que clientes (sean web o de escritorio) soportan elementos y propiedades que se relacionan con CSS, entre ellos:

  • Elemento <style>
  • Elemento <link>
  • Selectores CSS
  • Propiedades CSS

La guía muestra soporte para Windows y Mac OS utilizando diferentes clientes de correo web o de escritorio (valga la redundancia).

Supongo que desde ahora será mas agradable recibir correos electrónicos :D

Enlaces