Wednesday, November 23, 2011

Comparing 10-digit unix date with other date format in MySQL

If the date is stored in the database in 10-digit Unix format such as "1203683582" and you wish to do comparision with other date formats, do something like this:

SELECT *
FROM mytable
WHERE date BETWEEN UNIX_TIMESTAMP('2005-02-12') AND UNIX_TIMESTAMP('2010-01-01');
Remember to use the date within UNIX_TIMESTAMP() function in yyyy-mm-dd international standard (this is a default format used by MySQL anyway). Passing the date in dd/mm/yyyy format does not work. If you do not pass the time in the UNIX_TIMESTAMP(), the time defaults to 00:00:00.

Checkbox toggling with jQuery

<input id="mycheckbox" name="mycheckbox" type="checkbox" value="Y" />My Checkbox - click to toggle
<div id="mydiv" style="display:none;">This is a div that's to be shown/hidden.</div>
$('#mycheckbox').change(function(){ 
       $("#mydiv").slideToggle('slow');
  });
  
  if($('#mycheckbox').is(':checked')){ 
       $("#mydiv").slideToggle('slow');
  };
Here "mycheckbox" is the checkbox id and "mydiv" is the id of div that you want shown/hidden when toggling the checkbox.

See example below:

My Checkbox - click to toggle

Sunday, November 13, 2011

CSS Hack: Opacity on IE

If you want to get opacity to work on all IE browsers, use the following IE filters in the order:
.opaque {
  -ms-filter:"progid:DXImageTransform.Microsoft.Alpha(Opacity=50)"; // for IE8/9
  filter: alpha(opacity=50);  // for IE5-7
  opacity: .5;  // for all other browsers    
}

Note: opacity gets inherited by child elements. So it's better to use background-color:rgba(r,g,b,alpha). For IE browsers, use gradient filter with #argb.

CSS Hack: Using RGBA in IE

background-color: rgba(r,g,b,alpha) is not supported by IE browsers up to IE9. But there is a workaround- by converting rgba() into #argb and using gradient filter.

More information on rgba() to #argb conversion and a simple conversion utility can be found here: http://kilianvalkhof.com/2010/css-xhtml/how-to-use-rgba-in-ie/. 

Once rgba() is converted to #argb, you can then use the gradient opacity filter like this:
background:none;
-ms-filter:progid:DXImageTransform.Microsoft.gradient(startColorstr=#26ffffff,endColorstr=#26ffffff);
filter:progid:DXImageTransform.Microsoft.gradient(startColorstr=#26ffffff,endColorstr=#26ffffff);
zoom: 1;

Saturday, November 12, 2011

Internet Explorer (IE) CSS Hacks with Conditional Comments

This is self explanatory. I have only used this for CSS hacks. This may also work for HTML tags. See the examples below:

<!--[if IE]>
Conditional comment for IE
<style type="text/css">
.ie { padding:5px; }
</style>
<![endif]-->
<!--[if IE 6]>
<p>
Conditional comment for IE 6
</p>
<![endif]-->
<!--[if IE 7]>
Conditional comment for IE 7
<![endif]-->
<!--[if IE 8]>
Conditional comment for IE 8
<![endif]-->
<!--[if IE 9]>
Conditional comment for IE 9
<![endif]-->
<!--[if gte IE 8]>
Conditional comment for IE 8 or higher
<![endif]-->
<!--[if lt IE 9]>
Conditional comment for IE lower than 9
<![endif]-->
<!--[if lte IE 7]>
Conditional comment for IE lower or equal to 7
<![endif]-->
<!--[if gt IE 6]>
Conditional comment for IE greater than 6
<![endif]-->
<!--[if !IE]> -->
Conditional comment NOT for IE
<![endif]-->