<?xml version="1.0" encoding="UTF-8"?> <rss
version="2.0"
xmlns:content="http://purl.org/rss/1.0/modules/content/"
xmlns:wfw="http://wellformedweb.org/CommentAPI/"
xmlns:dc="http://purl.org/dc/elements/1.1/"
xmlns:atom="http://www.w3.org/2005/Atom"
xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
> <channel><title>gHacks Technology News &#124; Latest Tech News, Software And Tutorials &#187; css</title> <atom:link href="http://www.ghacks.net/tag/css/feed/" rel="self" type="application/rss+xml" /><link>http://www.ghacks.net</link> <description>A technology news blog covering software, mobile phones, gadgets, security, the Internet and other relevant areas.</description> <lastBuildDate>Fri, 10 Feb 2012 13:29:21 +0000</lastBuildDate> <language>en</language> <sy:updatePeriod>hourly</sy:updatePeriod> <sy:updateFrequency>1</sy:updateFrequency> <generator>http://wordpress.org/?v=3.3.1</generator> <atom:link rel="hub" href="http://pubsubhubbub.appspot.com"/><atom:link rel="hub" href="http://superfeedr.com/hubbub"/> <item><title>Mozilla Plugs The CSS History Leak</title><link>http://www.ghacks.net/2010/03/31/mozilla-plugs-the-css-history-leak/</link> <comments>http://www.ghacks.net/2010/03/31/mozilla-plugs-the-css-history-leak/#comments</comments> <pubDate>Wed, 31 Mar 2010 18:59:34 +0000</pubDate> <dc:creator>Martin Brinkmann</dc:creator> <category><![CDATA[Browsing]]></category> <category><![CDATA[Firefox]]></category> <category><![CDATA[css]]></category> <category><![CDATA[history]]></category> <category><![CDATA[history leak]]></category> <category><![CDATA[start panic]]></category> <category><![CDATA[web browser]]></category> <guid
isPermaLink="false">http://www.ghacks.net/?p=24081</guid> <description><![CDATA[All web browsers are currently having a CSS history privacy leak which enables attackers to brute force a list of sites that the user visited on the Internet. The CSS leak makes use of a function in CSS that colors visited and not visited links differently. All the attacker needs to do is to display [...]]]></description> <content:encoded><![CDATA[<p>All web browsers are currently having a CSS history privacy leak which enables attackers to brute force a list of sites that the user visited on the Internet. The CSS leak makes use of a function in CSS that colors visited and not visited links differently. All the attacker needs to do is to display a huge list of possible sites in the user&#8217;s web browser and check how their link color looks like to see if it has been visited.</p><p>The scripts are currently able to test more than 200K URLs per minute which should be enough to create a solid profile of nearly any web user.</p><p>Some factors mitigate the problem like clearing the history regularly.</p><p><span
id="more-24081"></span>The Mozilla developers have now come up with a solution for the problem that applies three changes to the way links are styled in the web browser.</p><p>The Mozilla <a
href="http://blog.mozilla.com/security/2010/03/31/plugging-the-css-history-leak/">blog</a> has a fairly long article up with technical details as does <a
href="http://dbaron.org/mozilla/visited-privacy">David Baron</a> whose solution was picked to plug the CSS History leak in the web browser.</p><p>It is not yet clear when this will make its way into the Firefox web browser but it is likely that it will be implemented soon.</p><p>Users who do not want to wait can protect their computer&#8217;s from the leak by setting &#8220;layout.css.visited_links_enabled option in about:config to false&#8221; which however has the consequence that no visited styling is displayed whatsoever in the web browser.</p><p>Users of all web browsers who want to test what a script could find out about their surfing habits can visit the <a
href="http://www.ghacks.net/2009/04/25/internet-privacy-start-panic-tells-you-where-you-have-been/">Start Panic</a> website</p> ]]></content:encoded> <wfw:commentRss>http://www.ghacks.net/2010/03/31/mozilla-plugs-the-css-history-leak/feed/</wfw:commentRss> <slash:comments>12</slash:comments> </item> <item><title>What The Internet Knows About You</title><link>http://www.ghacks.net/2010/02/17/what-the-internet-knows-about-you/</link> <comments>http://www.ghacks.net/2010/02/17/what-the-internet-knows-about-you/#comments</comments> <pubDate>Wed, 17 Feb 2010 15:10:44 +0000</pubDate> <dc:creator>Martin Brinkmann</dc:creator> <category><![CDATA[Security]]></category> <category><![CDATA[The Web]]></category> <category><![CDATA[css]]></category> <category><![CDATA[internet privacy]]></category> <category><![CDATA[privacy]]></category> <category><![CDATA[web browser]]></category> <category><![CDATA[what the internet knows about you]]></category> <guid
isPermaLink="false">http://www.ghacks.net/?p=23147</guid> <description><![CDATA[Most Internet users know that a website they visit can access various information about the computer system used to make the connection. This includes the screen resolution, operating system, IP address and web browser among other things. But those are not the only information that can be gathered when users visit a website. What would [...]]]></description> <content:encoded><![CDATA[<p>Most Internet users know that a website they visit can access various information about the computer system used to make the connection. This includes the screen resolution, operating system, IP address and web browser among other things. But those are not the only information that can be gathered when users visit a website.</p><p>What would you say if someone told you that they could find out additional information about you. Your Facebook or Twitter friends, websites that you have visited in the past including financial, government or adult ones, email accounts or even what you have searched for in the past in search engines.</p><p><span
id="more-23147"></span>The What The Internet Knows About You website will display those information and more on its website to all users who are connecting to it.</p><p>The method the website uses to retrieve and display those information is not a hack or exploit as it uses build in functionality in all modern web browsers to do that. It basically makes use of the feature to display visited links in a different color than not visited links.</p><p><img
src="http://www.ghacks.net/wp-content/uploads/2010/02/what_the_internet_knows_about_you-500x297.jpg" alt="" title="what the internet knows about you" width="500" height="297" class="alignnone size-medium wp-image-23148" /></p><p>All that needs to be done is to display those links (hidden to the user) on the website and check their link color to find out if a user has visited them. The method checks popular links against the user&#8217;s web browsing history to see if the page has been visited.</p><p>The What The Internet Knows About You website contains general link collections, e.g. the top 5000 or top 20000 websites in the world but also specialized checks for banks, social networking sites or government websites.</p><p>The service explains in detail how the information are retrieved and what users <a
href="http://www.whattheinternetknowsaboutyou.com/docs/solutions.html">can do</a> to protect their privacy so that these information cannot be retrieved.</p><ul><li>Disabling your browser&#8217;s history</li><li>Disabling CSS styling of visited links</li><li>Using a special browser extension to fix the problem</li></ul><p>If you want to find out for yourself <a
href="http://www.whattheinternetknowsaboutyou.com/">visit</a> the project&#8217;s website to find out what the Internet knows about you..</p> ]]></content:encoded> <wfw:commentRss>http://www.ghacks.net/2010/02/17/what-the-internet-knows-about-you/feed/</wfw:commentRss> <slash:comments>5</slash:comments> </item> <item><title>How to style your page using CSS</title><link>http://www.ghacks.net/2009/03/23/how-to-style-your-page-using-css/</link> <comments>http://www.ghacks.net/2009/03/23/how-to-style-your-page-using-css/#comments</comments> <pubDate>Mon, 23 Mar 2009 16:44:08 +0000</pubDate> <dc:creator>Daniel Pataki</dc:creator> <category><![CDATA[Web Development]]></category> <category><![CDATA[css]]></category> <category><![CDATA[html]]></category> <guid
isPermaLink="false">http://www.ghacks.net/?p=11400</guid> <description><![CDATA[Beginner article coming up, it&#8217;s time to get to know the wonderful world of CSS! Cascading Style Sheets, or css, is the standard method of styling a webpage. In fact, you should have no styling in HTML whatsoever. HTML was not designed to be a presentation language, it&#8217;s more of a structural-semantic language. In other [...]]]></description> <content:encoded><![CDATA[<p>Beginner article coming up, it&#8217;s time to get to know the wonderful world of CSS! Cascading Style Sheets, or css, is the standard method of styling a webpage. In fact, you should have no styling in HTML whatsoever. HTML was not designed to be a presentation language, it&#8217;s more of a structural-semantic language. In other words, HTML should give your content structurem while CSS should control the actual presentation.</p><p>It&#8217;s a bit difficult to describe this all in one article, but CSS is actually not that hard to get into. Basically, your HTML code has three types of &#8220;hooks&#8221;. You probably already know one of them, this is your common, everyday tag. You can also give a unique ID to any element, or a class, which can be applied to any amount of elements. CSS can grab on to these &#8220;hooks&#8221; (this is not a technical term), and style the element you are refering to.</p><p>Let&#8217;s take a side-step and look at how to implement CSS first. Right now let&#8217;s just use the following syntax inside the file, in the header section (there are many other ways, you can also call CSS from an external file) &#8220;<em>&lt;style type=&#8221;text/css&#8221;&gt; &lt;/style&gt;</em>&#8220;. You can write your CSS code in between the start and end tag. CSS code is also very simple syntax wise. You have to specify a selector, and then some properties and values. The selector will be one of those &#8220;hooks&#8221; we looked at, it will let you specify what you want to change the style of. The property will let you specify what property of that element you want to change (text size, color, etc), and the value will specify what you want to change it to. The correct syntax is &#8220;<strong>selector {property:value; property:value}</strong>&#8221;<br
/> <span
id="more-11400"></span><br
/> With that knowledge safely in our head, let&#8217;s take a more detailed look at our &#8220;hooks&#8221;, which will become our selectors. As I said, a tag can be a hook. Say you want the color of the font in all paragraphs to be orange. You can do this by applying the following CSS code: &#8220;<em>p {color:#ff9900;}</em>&#8220;. The selector is &#8220;p&#8221; the actual tag in html, the property is &#8220;color&#8221;, which controls text color, and the value is &#8220;#ff9900&#8243; which is a color code. You could also write &#8220;orange&#8221;, but color codes give you more control (more on this in another article).</p><p>That&#8217;s not too hard is it? Ok, so now all our paragraph&#8217;s have orange text color, but what if we want one to be different? You could put them in a div instead of a paragraph, since we only specified that paragraphs should have orange text. This is a very bad approach, but it does display how CSS works. You should not do this for many reasons, first of all because you loose some semantics, that piece of text is a paragraph, so should be in a paragraph tag.  Second of all, with this approach you will very quickly run out of tags to use. So in this case we apply the other &#8220;hooks&#8221;, we can specify a unique id, or a class. Let&#8217;s apply an id, since we just want a change for this one paragraph.</p><p>In your HTML the id is applied as an attribute to the tag like so: &#8220;<em>&lt;p id=&#8221;example&#8221;&gt;</em>&#8220;. What the actual id is, is not important, but try not to start it with a number, and don&#8217;t have special characters in it a lot (underscore is fine). We can use the id in our CSS code by applying the following in addition to the rule we already have: &#8220;<em>p#example {color:black;}</em>&#8220;. The selector now points specifically to that one paragraph, where we have specified the id &#8220;example&#8221;.</p><p>If we would have applied a class we would have &#8220;<em>&lt;p class=&#8221;example&#8221;&gt;</em>&#8221; in our HTML and &#8220;<em>p.example {color:black;}</em>&#8220;. If you try it out, you can see that there is no difference. The difference is in the fact that id should only be applied to one element only, while class can be applied to as many as you like. You can apply it to a paragraph and a div for example. In this case you could write the following: &#8220;<em>p.example {color:black;}</em> <em>div.example {color:black;}</em>&#8220;. This would tell each paragraph and each div with the class of &#8220;example&#8221; to have a text color of black. There is a simpler way to do this though, you can just specify the class, like so:  &#8220;<em>.example {color:black;}</em>&#8220;. This shows how you should &#8220;read&#8221; the code. Whenever you see just a class you should read it as &#8220;change the text color of <strong>all elements</strong> with this class to black&#8221;. If you see a tag or even another id or class in front you should read it as (in case of a paragraph) &#8220;change the text color of <strong>all paragraphs</strong> with this class to black&#8221;.</p><p>Those are the very basics of CSS, you might find a <a
title="css properties" href="http://htmlhelp.com/reference/css/properties.html">list of properties</a> helpful, but there are many resources on the web to learn more about CSS, but I will be back with more info, and you can start reading <a
href="http://www.bluehost.com/cgi/suspended?d=scriptastique.com">Scriptastique</a> for more info on CSS.</p><p>&lt;img class=&#8221;alignleft size-full wp-image-10878&#8243; src=&#8221;http://www.ghacks.net/wp-content/uploads/2009/03/scrip_twitter.gif&#8221; alt=&#8221;Script&#8221; width=&#8221;53&#8243; height=&#8221;53&#8243; /&gt;&lt;strong&gt;If you&#8217;d like to read some similar articles, take a look at &lt;a title=&#8221;Web development blog&#8221; href=&#8221;http://scriptastique.com&#8221;&gt;Scriptastique&lt;/a&gt;, a blog all about web development and coding, with great tips on CSS, HTML, PHP, MySQL and Javasctipt and tutorials and screencasts coming soon! You can follow us on our &lt;a title=&#8221;Scriptastique RSS feed&#8221; href=&#8221;http://feeds2.feedburner.com/scriptastique&#8221;&gt;RSS feed&lt;/a&gt;, or &lt;a title=&#8221;Scriptastique on Twitter&#8221; href=&#8221;http://twitter.com/scriptastique&#8221;&gt;Twitter&lt;/a&gt; and &lt;a title=&#8221;Scriptastique on Facebook&#8221; href=&#8221;http://www.facebook.com/home.php?#/profile.php?id=1470106953&amp;amp;ref=profile&#8221;&gt;Facebook&lt;/a&gt;! &lt;/strong&gt;</p> ]]></content:encoded> <wfw:commentRss>http://www.ghacks.net/2009/03/23/how-to-style-your-page-using-css/feed/</wfw:commentRss> <slash:comments>0</slash:comments> </item> <item><title>Identifying each page using body tags and CSS</title><link>http://www.ghacks.net/2009/03/11/identifying-each-page-using-body-tags-and-css/</link> <comments>http://www.ghacks.net/2009/03/11/identifying-each-page-using-body-tags-and-css/#comments</comments> <pubDate>Wed, 11 Mar 2009 18:00:51 +0000</pubDate> <dc:creator>Daniel Pataki</dc:creator> <category><![CDATA[Web Development]]></category> <category><![CDATA[css]]></category> <category><![CDATA[php]]></category> <category><![CDATA[superglobal]]></category> <category><![CDATA[web development]]></category> <guid
isPermaLink="false">http://www.ghacks.net/?p=11106</guid> <description><![CDATA[If you are building a large website, chances are you have a great little CSS stylesheet linked to every document which governs all the pages. But what do you do if you want just one of the pages to be completely different? You could of course go into your code and ad separate id-s and [...]]]></description> <content:encoded><![CDATA[<p>If you are building a large website, chances are you have a great little CSS stylesheet linked to every document which governs all the pages. But what do you do if you want just one of the pages to be completely different? You could of course go into your code and ad separate id-s and classes for specific elements, but I use a bit of an easier approach.</p><p>The basis of this is to use php code to determine the directory of the page you are viewing and also the page&#8217;s name itself. I will show you the code in a second, but let&#8217;s say you have a social network site underway and you keep you messaging system (outbox, inbox, new message, etc.) in a folder named &#8220;messaging&#8221;. In this case you can grab the name of the directory and the page and assign these as an id and a class to the body tag automatically, so it would look like this for the inbox: <em>&lt;body class=&#8221;messaging&#8221; id=&#8221;inbox&#8221;&gt;</em>.</p><p>This will make it very easy to add new rules in your stylesheet, since you can refer to whole documents in a directory using <strong>&#8220;body.messaging&#8221;</strong> and you can refer to specific pages using<strong> &#8220;body#inbox&#8221;</strong>. You can now use the same CSS file to change the look of only one page without the need to go in and add new classes and ids all the time. So how about the code to grab the directory and the page? Let&#8217;s take a look!</p><p><span
id="more-11106"></span></p><p>First of all, let&#8217;s determine the page. For this we will use the <strong>&#8220;$_SERVER&#8221;</strong> superglobal variable which stores a lot of valuable information about the page you are viewing, the IP viewing the page and so on. Here&#8217;s the code as is, with the explanation coming up afterward.</p><pre>function page()
{
$page = substr(strrchr($_SERVER['PHP_SELF'],'/'),1,-4);
return $page;
}</pre><p>As you can see this is a function because I use it a lot throughout the site, not just for this one purpose. <strong>&#8220;$_SERVER['PHP_SELF']&#8220;</strong> will return the path to the file with the filename from your root directory, so it will look something either like this: <strong>&#8220;/directory/subdirectory/file.php&#8221;</strong> or if the file is in the root directory it will simply be <strong>&#8220;/file.php&#8221;</strong>. To get only the filename we want to chop off all the bits before the slash (and the slash itself), and also chop off the file extension.</p><p>As you can see the first thing I did was to chop off everything before the last slash using <strong>&#8220;strrchr()&#8221;</strong> which returns the part of the string after the last occurrence of the sub-string you specify. However, the last slash still remains, but this is not a problem, we can get rid of this, and the &#8220;.php&#8221; part in one go.</p><p>This is done by using <strong>&#8220;substr()&#8221;</strong>. The function took three arguments, the string we want to work with, and two integers. The first integer tells the function to start from character 1 (this means everything before that will be chopped off, in this case character 0, which is the slash) and then return everything up to the -4th character from the end. This means that four characters will be dropped from the end.</p><p>Now the variable <strong>&#8220;$page&#8221;</strong> contains only the readable part of the filename which would be &#8220;inbox&#8221; or &#8220;index&#8221;, without any slashes or the extension. You could also create this as a variable without using function. the reason I use a function is that I usually have some extra code in there which allows me to echo the function at once by default, but also to store it as a variable if needed.</p><p>Now, let&#8217;s take a look at determining the directory. We could take the same approach as before but chop off different bits, but PHP already has a function which will make our life easier, let&#8217;s take a look at the code:</p><pre>function thedir()
{
$dir = substr(strrchr(getcwd(), '/'),1);
return $dir;
}</pre><p>Using <strong>&#8220;getcwd()&#8221;</strong> we can get the current working directory. This will be in the form of <strong>&#8220;/directory/subdirectory&#8221;</strong>, so all we need to do is return everything after the last slash and chop the last slash off. We use the same technique as before, so now we also have our directory. Once done, all you need to do is modify your header, which should be in a PHP file to make the body tag look like this (calling the functions as the names for the class and id):</p><pre>&lt;body id="&lt;?php echo page() ?&gt; class="&lt;?php echo $thedir ?&gt;""&gt;</pre><p>There are some other ways to do this, some can be simpler or more complicated, this is more like the proving of a point, but it is totally usable and I use a modified version of it throughout my sites. This is not a whole lot of code extra and will make your site better structured and easier to modify.</p><p>Please be aware that<strong> &#8220;getcwd()&#8221;</strong> can give you some weird results if you changed your current working directory somewhere in your code. In this case you can use a modified version of the &#8216;page getting&#8217; code, or you can take a look at the <a
href="http://hu.php.net/reserved.variables.server">server superglobal</a> section in the PHP manual for some more help.</p><p><img
class="alignleft size-full wp-image-10878" src="http://www.ghacks.net/wp-content/uploads/2009/03/scrip_twitter.gif" alt="Script" width="53" height="53" /><strong>If you&#8217;d like to read some similar articles, take a look at <a
title="Web development blog" href="http://www.bluehost.com/cgi/suspended?d=scriptastique.com">Scriptastique</a>, a blog all about web development and coding, with great tips on CSS, HTML, PHP, MySQL and Javasctipt and tutorials and screencasts coming soon! You can follow us on our <a
title="Scriptastique RSS feed" href="http://feeds2.feedburner.com/scriptastique">RSS feed</a>, or <a
title="Scriptastique on Twitter" href="http://twitter.com/scriptastique">Twitter</a> and <a
title="Scriptastique on Facebook" href="http://www.facebook.com//login.php">Facebook</a>! </strong></p> ]]></content:encoded> <wfw:commentRss>http://www.ghacks.net/2009/03/11/identifying-each-page-using-body-tags-and-css/feed/</wfw:commentRss> <slash:comments>2</slash:comments> </item> <item><title>PHP &#8211; what it does and what it doesn&#8217;t</title><link>http://www.ghacks.net/2009/02/16/php-what-it-does-and-what-it-doesnt/</link> <comments>http://www.ghacks.net/2009/02/16/php-what-it-does-and-what-it-doesnt/#comments</comments> <pubDate>Mon, 16 Feb 2009 19:28:22 +0000</pubDate> <dc:creator>Jeremiah</dc:creator> <category><![CDATA[Tutorials Basic]]></category> <category><![CDATA[Web Development]]></category> <category><![CDATA[css]]></category> <category><![CDATA[html]]></category> <category><![CDATA[LAMP]]></category> <category><![CDATA[mysql]]></category> <category><![CDATA[php]]></category> <category><![CDATA[web dev]]></category> <category><![CDATA[web development]]></category> <category><![CDATA[website development]]></category> <guid
isPermaLink="false">http://www.ghacks.net/?p=10600</guid> <description><![CDATA[PHP is a Server side scripting language. Its primary competitors are ASP (Microsoft), JSP (Sun), CFM (Adobe), and Perl (often called cgi by hosting companies, although it is not the only cgi language). PHP was originally created in 1995, so as a technology it is fairly mature. Version 5.x is the latest stable version and [...]]]></description> <content:encoded><![CDATA[<p>PHP is a Server side scripting language. Its primary competitors are ASP (Microsoft), JSP (Sun), CFM (Adobe), and Perl (often called cgi by hosting companies, although it is not the only cgi language).<br
/> PHP was originally created in 1995, so as a technology it is fairly mature. Version 5.x is the latest stable version and 6 is under development. It is currently running almost 20 million websites including big names like Facebook.</p><p>The most common server architecture on which PHP is found is called LAMP (for Linux + Apache + MySQL + PHP). All of the elements of LAMP are open source, meaning that the source code of the application is freely available. This means that the cost of setting up a server running LAMP is reduced (No License Fees), so LAMP based web hosting tends to be the least expensive solution available.</p><p>The Internet is built on a client-server architecture. On the client side we have the user and the browser. One the server side we have the server and its script interpreter (In our case, Apache and PHP).<br
/> Because PHP runs on the server side, we cannot use it for flashy client side effects, things like animations and auto-complete cannot be performed by php because php is only running on the server. For client side programming we could use javascript, Flash/Flex, Silverlight, or JavaFX.</p><p><span
id="more-10600"></span>What we can do with PHP is access a database, connect to other websites/services for information, and build a page out of smaller pieces, which we then deliver to the client for rendering.</p><p>I think it is important to indicate at this time that there are four levels at which you can work with PHP.</p><ol><li>Scripting &#8211; this is where you take a small script and add it (integrate) into an existing page.</li><li>Coding &#8211; this is where you write scripts as needed to add basic functionality to your site.</li><li>Development &#8211; this is where you write an full application in PHP.</li><li>Architect &#8211; this is where you properly design an application that develop it into an application. Like development but puts a lot more thought into a good foundation.</li></ol><p>Depending on your actual needs, several of these layers could be overkill for your task. The following articles will mainly be focused on the first two levels &#8211; scripting, and coding. In Scripting and coding we have two primary tasks we accomplish. One makes your job as webmaster easier. The second adds new functionality to your site.</p><p>Jeremiah Stover is a Software Engineer and a Business IT Consultant at <a
href="http://www.pragmatic-development.com">Pragmatic Development</a>. He has hands on experience and regularly provides practical advice in Business, Marketing, IT equipment and software. His Specialties include interpersonal communications, design skills, teaching and instruction. Right now he spends most of his time developing web applications in PHP and MySQL.</p> ]]></content:encoded> <wfw:commentRss>http://www.ghacks.net/2009/02/16/php-what-it-does-and-what-it-doesnt/feed/</wfw:commentRss> <slash:comments>4</slash:comments> </item> <item><title>Web Development: PHP &#8211; what role does it fill</title><link>http://www.ghacks.net/2009/02/01/web-development-php-what-role-does-it-fill/</link> <comments>http://www.ghacks.net/2009/02/01/web-development-php-what-role-does-it-fill/#comments</comments> <pubDate>Sun, 01 Feb 2009 09:03:18 +0000</pubDate> <dc:creator>Jeremiah</dc:creator> <category><![CDATA[Web Development]]></category> <category><![CDATA[css]]></category> <category><![CDATA[html]]></category> <category><![CDATA[mysql]]></category> <category><![CDATA[php]]></category> <category><![CDATA[web dev]]></category> <category><![CDATA[web development]]></category> <category><![CDATA[website development]]></category> <guid
isPermaLink="false">http://www.ghacks.net/?p=10259</guid> <description><![CDATA[Before we try to work with PHP we need understand the role it fills â€“ what problem does it address. The World Wide Web is built on a client-server model. A client computer requests a page which is supplied by a Web Server. The browser then renders the page for the user to view. The [...]]]></description> <content:encoded><![CDATA[<p>Before we try to work with PHP we need understand the role it fills â€“ what problem does it address. The World Wide Web is built on a client-server model.  A client computer requests a page which is supplied by a Web Server. The browser then renders the page for the user to view. The simplest type of pages contain static (unchanging) content. The server could serve plain text files, and the browser wouldn&#8217;t have any trouble rendering them.</p><p>HTML is a markup language that lets us describe attributes of the text and blocks on our pages. This works great for simple requests, making pages much more interesting than plain text. However it leaves us with a very simple structure. One page from One url (address) results in one rendered content (every time this url is requested, the output is the same).</p><p>To give us more options we have programming languages. Some like PHP run on the server side. They modify the content that will be displayed before it is sent to the client and on to the browser. Others like JavaScript run on the client side and allow changes to be made in the browser after the page has been rendered â€“ usually for interactivity or for adding a feature not normally available in that browser.</p><p><span
id="more-10259"></span>The very first thing you _must_ do before getting started with PHP is get a good grasp of HTML (and CSS). Many webmasters use a tool like Dreamweaver, Expression Web or KompoZer. To<br
/> work with PHP it is important that you understand the underlying HTML code. You will be modifying this code so you need to be able to understand the HTML well enough to understand what you see.</p><p>If you like video training try Lynda.com or VTC.com. If you prefer reading a book try &#8220;Head First html with CSS &#038; Xhtml&#8221; or if you prefer free web instruction try <a
href="http://w3schools.com">w3schools.com</a> and <a
href="http://tizag.com">tizag.com</a>.</p><p>Now that you understand the markup language which is what is sent to the browser (HTML) you are ready to tackle the server side use of PHP.</p><p>Jeremiah Stover is a Software Developer at <a
href="http://www.pragmatic-development.com/">Pragmatic Development</a>. He specializes in client communications. While PD does offer a full range of IT services and consulting, they are currently specializing in website development in PHP/MySQL.</p> ]]></content:encoded> <wfw:commentRss>http://www.ghacks.net/2009/02/01/web-development-php-what-role-does-it-fill/feed/</wfw:commentRss> <slash:comments>1</slash:comments> </item> <item><title>Using javascript to hide and unhide elements dynamically</title><link>http://www.ghacks.net/2009/01/15/using-javascript-to-hide-and-unhide-elements-dynamically/</link> <comments>http://www.ghacks.net/2009/01/15/using-javascript-to-hide-and-unhide-elements-dynamically/#comments</comments> <pubDate>Thu, 15 Jan 2009 01:29:15 +0000</pubDate> <dc:creator>Daniel Pataki</dc:creator> <category><![CDATA[Web Development]]></category> <category><![CDATA[ajax]]></category> <category><![CDATA[css]]></category> <guid
isPermaLink="false">http://www.ghacks.net/?p=9899</guid> <description><![CDATA[My favorite aspect of javascript is that it enables you to add great features to your site like showing/hiding parts of it when a user clicks a link without reloading, get some data from a database and displaying it in a new div, again without reloading. In fact, it would be possible (although not very [...]]]></description> <content:encoded><![CDATA[<p>My favorite aspect of javascript is that it enables you to add great features to your site like showing/hiding parts of it when a user clicks a link without reloading, get some data from a database and displaying it in a new div, again without reloading. In fact, it would be possible (although not very comfortable and easily codeable) to create a big website, like a WordPress blog without any reloading at all, no matter where you click.</p><p>This is usually referred to as AJAX, although most of it is javascript and HTML, and it is actually easier than it seems. In my opinion calling the hiding and showing of elements is not yet AJAX, because in my eyes ture AJAX communicates with the server in the background. We will only be changing CSS properties and element contents with javascript in this post to achieve our goal.</p><p>Let&#8217;s say you&#8217;re creating a form, and you want a way to explain what the fields do or what data they need to contain, but you don&#8217;t want to fill up too much space on screen, and you want to make it as unobtrusive as possible. In this case it would be cool to have a link with the anchortext &#8220;Explain&#8221;, which would expand a section which explains what the user needs to do.</p><p><span
id="more-9899"></span></p><p>As the first step, we need to create a div which will hold the explanation text, and a link which will unhide it for the user.<br
/> <code><br
/> &lt;a id="link1" href="javascript:display('show', 1)"&gt;Explain&lt;/a&gt;<br
/> &lt;div id="explanation1" style="display:none"&gt;This form let's you input your order details, please keep it short!&lt;/div&gt;<br
/> </code></p><p>As you can see I have given the div a unique identifier. This is needed so the javascript knows which div I want to change. I have added a number to the id because there might be many more explanations, these would receive different numbers. I have also given the link an id, with the same number at the end as the div. Once the user clicked the link, we want to change the link, so clicking it again will close the div.</p><p>The link contains &#8220;javascript:&#8221;, which indicates that this link doesn&#8217;t point to a page, but should execute javascript code, in our case a function (display), with two arguments. The first tells the javascript function which will execute that we want to show the div (as opposed to hiding it), the second is a numerical identifier, which should be the same as the number in the div&#8217;s id. Take a look at the javascript code below with the explanation afterwards.</p><p><code><br
/> &lt;script type="text/javascript"&gt;<br
/> <br
/> function display(action, id)<br
/> {<br
/> if (action == 'show')<br
/> {<br
/> document.getElementById("explanation"+id).style.display = "block";<br
/> document.getElementById("link"+id).href= "javascript:display('hide', "+id+")";<br
/> document.getElementById("link"+id).innerHTML = "Close";<br
/> }<br
/> <br
/> if (action == 'hide')<br
/> {<br
/> document.getElementById("explanation"+id).style.display = "none";<br
/> document.getElementById("link"+id).href= "javascript:display('show', "+id+")";<br
/> document.getElementById("link"+id).innerHTML = "Explain";<br
/> }<br
/> }<br
/> <br
/> &lt;/script&gt;<br
/> </code></p><p>As you can see, the two arguments are named &#8220;action&#8221; and &#8220;id&#8221;. The action argument will tell the script what we want to do (close the div or show it), the id argument will tell it which element we want to do it with. When you first click on the link the action is &#8220;show&#8221;, so let&#8217;s take a look at what&#8217;s happening there.</p><p>First of all, the script checks what the action is. It sees that it is &#8220;show&#8221;, so it executes three lines. the first line sets the div&#8217;s dispaly to block, which means that it will appear, you will be able to read the text. this is achieved by &#8220;grabbing&#8221; the element using its unique id. By specifying &#8220;document.getElementById(&#8216;theidhere&#8217;)&#8221; you can grab any element. In our case, we always grab the element &#8220;explanationX&#8221;, where X is the number beside it, given by the id argument. This id argument makes it possible to use one function for all the divs you want to open or close, so we won&#8217;t need to code the same function for all the different ids out there. The bit of code following specifies that we want to change the style, more specifically the display property, and we want to change it to &#8220;block&#8221;.</p><p>The second line grabs the link element, and instead of changing the style, it changes the address it points to (href), which in our case will be a new piece of javascript code. We change it to the exact same code, but instead of &#8220;show&#8221; as the action, we now have hide.</p><p>Line 3 grabs the same link element, but now changes the element contents. An element&#8217;s contents is always whatever is between the start and end tag, in a link&#8217;s case this is the anchor text. We change it from &#8220;Explain&#8221; to &#8220;Close&#8221; so the user knows that the div will disappear if he clicks the link again.</p><p>The three lines in case the action is &#8220;hide&#8221; do the exact same things, but change the values back, so if the user wants to open the div again he can do so.</p><p>That wasn&#8217;t so hard was it? The uses for these javascript methods are truly endless, from checking registration forms before submitting, to dynamically adding text to your site, you can do almost anything here, your imagination is truly the limit, so have fun!</p> ]]></content:encoded> <wfw:commentRss>http://www.ghacks.net/2009/01/15/using-javascript-to-hide-and-unhide-elements-dynamically/feed/</wfw:commentRss> <slash:comments>33</slash:comments> </item> <item><title>Remove adverts on Wikipedia</title><link>http://www.ghacks.net/2008/11/07/remove-adverts-on-wikipedia/</link> <comments>http://www.ghacks.net/2008/11/07/remove-adverts-on-wikipedia/#comments</comments> <pubDate>Fri, 07 Nov 2008 20:11:58 +0000</pubDate> <dc:creator>Joe</dc:creator> <category><![CDATA[Browsing]]></category> <category><![CDATA[The Web]]></category> <category><![CDATA[advertisement]]></category> <category><![CDATA[css]]></category> <category><![CDATA[wikipedia]]></category> <guid
isPermaLink="false">http://www.ghacks.net/?p=8134</guid> <description><![CDATA[Wikipedia are currently having their annual fundraising drive and consequently a large &#8216;encouragement&#8217; to donate appears on every single encyclopedia article, which is an annoyance. Whilst it is possible to &#8216;collapse&#8217; the advertisement to a much smaller one, having to do so is about as big an annoyance as the original advertisement. A popular Wikimedia-themed [...]]]></description> <content:encoded><![CDATA[<p>Wikipedia are currently having their annual fundraising drive and consequently a large &#8216;encouragement&#8217; to donate appears on every single encyclopedia article, which is an annoyance.</p><p>Whilst it is possible to &#8216;collapse&#8217; the advertisement to a much smaller one, having to do so is about as big an annoyance as the original advertisement.</p><p>A popular Wikimedia-themed newsletter, Wikizine, <a
href="http://en.wikizine.org/2008/11/year-2008-week-45-number-101-tech-flash.html">pointed out that by modifying the theme</a>, it is possible to remove it.</p><p><span
id="more-8134"></span>All registered users can edit two files which modify CSS and JavaScript on Wikipedia for them. By default, the monobook theme is used and to my knowledge, this will only under that theme.</p><p>To remove the advert, ensure you are logged in, then go to Special:mypage/monobook.css. Go to &#8216;edit this page&#8217; and paste the following:</p><p><code>/* Remove fundraiser banner and sitenotice */<br
/> #siteNotice, #fundraiser, .fundraiser-box { display:none; !important; }</code></p><p>Save the page and then do a hard refresh (Ctrl+F5). The advert should be gone!</p><p>Wikimedia obviously requires money in order to operate and they massively value donations, but I find begging for money in such an obtrustive fashion very annoying and it really makes Wikipedia less easy to use.</p><p><strong>Update:</strong> Wikipedia is currently again asking for donations. This is handled in very much the same way as it was handled in 2008. You see a large donation banner on every Wikipedia page. It is possible to close the banner but it will eventually reappear.</p><p>One of the options here is to use userscripts, small JavaScript based files, to remove the banners from Wikipedia. Remove Wikipedia notices <a
href="http://userscripts.org/scripts/show/119312">is one of</a> the scripts that you can install in your browser to remove the donation banner on Wikipedia. Chrome users can install the script right away, Firefox users need to download and install either the Greasemonkey or the Scriptish extension before they can do so.</p> ]]></content:encoded> <wfw:commentRss>http://www.ghacks.net/2008/11/07/remove-adverts-on-wikipedia/feed/</wfw:commentRss> <slash:comments>5</slash:comments> </item> <item><title>Create WordPress Themes</title><link>http://www.ghacks.net/2008/09/11/create-wordpress-themes/</link> <comments>http://www.ghacks.net/2008/09/11/create-wordpress-themes/#comments</comments> <pubDate>Thu, 11 Sep 2008 03:15:16 +0000</pubDate> <dc:creator>joshua</dc:creator> <category><![CDATA[Software]]></category> <category><![CDATA[css]]></category> <category><![CDATA[generator]]></category> <category><![CDATA[html]]></category> <category><![CDATA[wordpress]]></category> <guid
isPermaLink="false">http://www.ghacks.net/2008/09/11/create-wordpress-themes/</guid> <description><![CDATA[WordPress is fantastic for the extend to which is can be customised, however if mucking around with CSS isnâ€™t something you really want to get into personally then here are a few tools to help you out: Artisteer Artisteer is a new application fresh out of beta which helps you design either normal websites or [...]]]></description> <content:encoded><![CDATA[</p><p>WordPress is fantastic for the extend to which is can be customised, however if mucking around with CSS isnâ€™t something you really want to get into personally then here are a few tools to help you out:</p><p><strong>Artisteer</strong></p><p><a
href="http://www.artisteer.com/Default.aspx?HK=FB48-6F8A-8F1C-9FA0-6E6A&amp;p=purchase">Artisteer</a> is a new application fresh out of beta which helps you design either normal websites or a WordPress theme. Itâ€™s also one of the few programs Iâ€™ve seen which uses the Office Ribbon UI, it works pretty effectively for this application and looks great as well.</p><p>The problem is that this isnâ€™t freeware and costs $99.95 for a developer license. Considering the lack of advanced features in the software, however nice it looks, I canâ€™t see many people jumping at the chance to purchase this.</p><p>Perhaps if it included an actual code editor as well or had a great deal more options for customisation then it would be a more attractive offer but till then I think not. If you use the free version all images are watermarked when you export your theme, however this could still be useful as you can simply replace the images in the files.</p><p>I can only assume the activation of Artisteer provides a lot more functionality such as more templates, support for more platforms and more options.</p><p> <span
id="more-6924"></span><p><a
href="http://www.wordpressthemegen.com/"><strong>WordPress Theme Generator</strong></a></p><p>Feels kind of dated compared to Artisteer but will do the basics of theme design for you, handy if you want something to work off but not much more than that.</p><p>Starkers WordPress Theme</p></p><p>I particularly like this. If youâ€™ve ever started a new theme based off the default WordPress themes then youâ€™ll have realised how much stuff is in there which you really donâ€™t need. Naked WordPress theme is a completely stripped down theme for you to work off, really helpful =)</p><p>Thereâ€™s an update saying it isnâ€™t working too well with WP 2.6, but that the author is updating it soon =)</p> ]]></content:encoded> <wfw:commentRss>http://www.ghacks.net/2008/09/11/create-wordpress-themes/feed/</wfw:commentRss> <slash:comments>7</slash:comments> </item> <item><title>View Javascript Sources with JSView</title><link>http://www.ghacks.net/2008/08/19/view-javascript-sources-with-jsview/</link> <comments>http://www.ghacks.net/2008/08/19/view-javascript-sources-with-jsview/#comments</comments> <pubDate>Tue, 19 Aug 2008 13:05:26 +0000</pubDate> <dc:creator>Martin Brinkmann</dc:creator> <category><![CDATA[Firefox]]></category> <category><![CDATA[css]]></category> <category><![CDATA[firefox add-ons]]></category> <category><![CDATA[javascript]]></category> <category><![CDATA[stylesheets]]></category> <category><![CDATA[web designer]]></category> <guid
isPermaLink="false">http://www.ghacks.net/?p=6287</guid> <description><![CDATA[Viewing the source code of a website is a standard function in all web browsers. A right-click usually opens a menu with the option to view the source code of the page. Source code only refers to html source code. There is no way to view Javascript or CSS source codes directly from those menus. [...]]]></description> <content:encoded><![CDATA[<p>Viewing the source code of a website is a standard function in all web browsers. A right-click usually opens a menu with the option to view the source code of the page. Source code only refers to html source code. There is no way to view Javascript or CSS source codes directly from those menus.</p><p>The Firefox add-on <a
href="https://addons.mozilla.org/en-US/firefox/addon/jsview/">JSView</a> adds that possibility to the Firefox browser. Installing the Firefox extension adds a new entry to the right-click menu which displays the amount of Javascript and CSS files that are referenced by the website.</p><p>Each file can be opened by selecting it. The source code of the selected file will be opened in the default source viewer of the browser.</p><p><span
id="more-6287"></span><img
src="http://www.ghacks.net/wp-content/uploads/2008/08/javascript_source_code.jpg" alt="javascript source code" title="javascript source code" width="409" height="246" class="alignnone size-medium wp-image-6288" /></p><p>The extension provides the option to view the source code of all Javascript or CSS files at once. The tool is especially useful for web designers.</p> ]]></content:encoded> <wfw:commentRss>http://www.ghacks.net/2008/08/19/view-javascript-sources-with-jsview/feed/</wfw:commentRss> <slash:comments>1</slash:comments> </item> <item><title>An easy way to learn web design</title><link>http://www.ghacks.net/2008/06/14/an-easy-way-to-learn-web-design/</link> <comments>http://www.ghacks.net/2008/06/14/an-easy-way-to-learn-web-design/#comments</comments> <pubDate>Fri, 13 Jun 2008 23:05:46 +0000</pubDate> <dc:creator>Daniel Pataki</dc:creator> <category><![CDATA[Knowledge]]></category> <category><![CDATA[The Web]]></category> <category><![CDATA[coding]]></category> <category><![CDATA[css]]></category> <category><![CDATA[html]]></category> <guid
isPermaLink="false">http://www.ghacks.net/?p=4979</guid> <description><![CDATA[I spent a little time today on a WordPress theme for one of my clients. He asked me to copy his webpage design and turn it into a WordPress blog. This took me about a fifth of the time it takes to design a blog on my own, and the coding was much smoother and [...]]]></description> <content:encoded><![CDATA[<p>I spent a little time today on a WordPress theme for one of my clients. He asked me to copy his webpage design and turn it into a WordPress blog. This took me about a fifth of the time it takes to design a blog on my own, and the coding was much smoother and easier. I realized that this is a great exercise to start learning html and css.</p><p>In fact, I&#8217;m teaching my girlfriend css design and we went through the same process, taking an existing page and recreating it. First of all, you see the design right in front of you and you don&#8217;t need to keep in mind where you want to get to. Second of all, you can use some awesome tools to help you on the way if you&#8217;re a beginner.</p><p>My favorite tool is of course Web developer toolbar, which is a Firefox extension that can aid you in web design. A great trick to know is to press ctr+shift+y to view style sheet info on a page. This will draw a rectangle around elements you hover over, and when you click, it will display the styling behind those elements.</p><p><span
id="more-4979"></span></p><p>This is awesome if you&#8217;re starting out because it&#8217;s a cheat sheet you can use to check how the designers did this or that, but you can also use it to take a look at what colors where used, how a float is accomplished and so on. There are also some other tools in there like changing the stylsheet on the fly, resizing the viewport and so on.</p><p>In short, copying a website is much easier than creating your own design. If you take the burden of trying to create something cool and new on your own off your back, you will be free to actually learn the methods behind coding a good site. My girlfriend also finds it very helpful, and she&#8217;s a complete css newbie, so I guess many people could find this method appealing, mosty because it puts you in the action right away, no need to go through all the boring theory.</p> ]]></content:encoded> <wfw:commentRss>http://www.ghacks.net/2008/06/14/an-easy-way-to-learn-web-design/feed/</wfw:commentRss> <slash:comments>4</slash:comments> </item> <item><title>Check CSS Properties with Xray</title><link>http://www.ghacks.net/2007/12/23/check-css-properties-with-xray/</link> <comments>http://www.ghacks.net/2007/12/23/check-css-properties-with-xray/#comments</comments> <pubDate>Sun, 23 Dec 2007 11:08:54 +0000</pubDate> <dc:creator>Martin Brinkmann</dc:creator> <category><![CDATA[Browsing]]></category> <category><![CDATA[Firefox]]></category> <category><![CDATA[ie]]></category> <category><![CDATA[The Web]]></category> <category><![CDATA[bookmarklet]]></category> <category><![CDATA[css]]></category> <category><![CDATA[webmaster]]></category> <guid
isPermaLink="false">http://www.ghacks.net/2007/12/23/check-css-properties-with-xray/</guid> <description><![CDATA[Xray is a bookmarklet that can be used in Firefox, Internet Explorer 6+ and Safari that displays CSS Properties of elements on a website. The process is as simple as it could be. The user loads a website, clicks on the Xray bookmarklet which loads an overlay that will display the information.]]></description> <content:encoded><![CDATA[<p><a
href="http://westciv.com/xray/">Xray</a> is a bookmarklet that can be used in Firefox, Internet Explorer 6+ and Safari that displays CSS Properties of elements on a website. The process is as simple as it could be. The user loads a website, clicks on the Xray bookmarklet which loads an overlay that will display the information.</p><p>Every click on an element displays the CSS properties for that element right on the screen. The element itself displays its width, height and position on the screen while the Xray box displays additional information such as margin, padding, position and border values.</p><p>This is in no way as powerful as the Firebug extension for Firefox but it can give a good quick overview over certain important CSS properties. I&#8217;m mentioning it here mainly because I think that it is astonishing that a simply bookmarklet could display such a wealth of information.</p><p><span
id="more-2569"></span><img
src='http://www.ghacks.net/wp-content/uploads/2007/12/xray.jpg' alt='xray' /></p> ]]></content:encoded> <wfw:commentRss>http://www.ghacks.net/2007/12/23/check-css-properties-with-xray/feed/</wfw:commentRss> <slash:comments>4</slash:comments> </item> <item><title>DVDFab HD Decrypter</title><link>http://www.ghacks.net/2007/08/14/dvdfab-hd-decrypter/</link> <comments>http://www.ghacks.net/2007/08/14/dvdfab-hd-decrypter/#comments</comments> <pubDate>Tue, 14 Aug 2007 04:37:58 +0000</pubDate> <dc:creator>Martin Brinkmann</dc:creator> <category><![CDATA[Music and Video]]></category> <category><![CDATA[Tools]]></category> <category><![CDATA[aacs]]></category> <category><![CDATA[blue ray]]></category> <category><![CDATA[copy-protection]]></category> <category><![CDATA[css]]></category> <category><![CDATA[dvdfab hd decrypter]]></category> <category><![CDATA[hd dvd]]></category> <category><![CDATA[rip dvd]]></category> <guid
isPermaLink="false">http://www.ghacks.net/2007/08/14/dvdfab-hd-decrypter/</guid> <description><![CDATA[DVDFab HD Decrypter is a free DVD and HD ripper that is able to copy the contents of a movie onto your hard drive even if that movie is copy protected. It can remove DVD copy protections such as CSS, RC, RCE, APS, UOPs and Sony ARccOS and even manages to remove AACS from Blue-Ray and HD-DVD disks which means that it should be possible to copy most DVDs and HD DVDs that you have to your hard disk without running into copy protection problems.]]></description> <content:encoded><![CDATA[<p><a
href="http://www.dvdfab.com/free.htm">DVDFab HD Decrypter</a> is a free DVD and HD ripper that is able to copy the contents of a movie onto your hard drive even if that movie is copy protected. It can remove DVD copy protections such as CSS, RC, RCE, APS, UOPs and Sony ARccOS and even manages to remove AACS from Blue-Ray and HD-DVD disks which means that it should be possible to copy most DVDs and HD DVDs that you have to your hard disk without running into copy protection problems.</p><p>The only aspect that is a little bit confusing is the menu structure. Since this is basically a free version of DVDFab Gold and Platinum not all options are accessible in the main menu. It is only possible to rip the DVD or HD movie to your hard disk removing all copy protection in the process or to uncheck certain elements, such as extra languages or trailers, on the disk before you do that.</p><p><span
id="more-1870"></span><img
src="http://www.ghacks.net/files/screens/2007/08/hddecrypter.jpg" alt="dvd fab hd decrypter" /></p><p>The options should be your first stop before you start using DVDFab HD Decrypter. Make sure you change the temp and output directories if your c: drive does not have enough space to hold a full DVD or HD movie.</p><p>The Region Code is removed as well by default making the disk universally playable on all players. It seems however that this setting has to be changed in the options whenever a disk with a different region code is inserted. It was automatically set to region 2 and it did not change when I placed a region 1 disk in the drive.</p><p>Still no problem unless you have a lot of disks from different regions. DVDFab HD Decrypter is a great tool if you want to copy DVD or HD movies with or without copy protection. Please note that using this tool might be illegal in some countries.</p> ]]></content:encoded> <wfw:commentRss>http://www.ghacks.net/2007/08/14/dvdfab-hd-decrypter/feed/</wfw:commentRss> <slash:comments>9</slash:comments> </item> <item><title>CSS Nudity</title><link>http://www.ghacks.net/2005/11/30/css-nudity/</link> <comments>http://www.ghacks.net/2005/11/30/css-nudity/#comments</comments> <pubDate>Wed, 30 Nov 2005 15:24:23 +0000</pubDate> <dc:creator>Martin Brinkmann</dc:creator> <category><![CDATA[Funny]]></category> <category><![CDATA[Cool]]></category> <category><![CDATA[css]]></category> <category><![CDATA[Entertainment]]></category> <category><![CDATA[fun]]></category> <category><![CDATA[nudity]]></category> <guid
isPermaLink="false">http://www.ghacks.net/?p=191</guid> <description><![CDATA[Well this concept has been new to me and it probably is for you as well. Everyone who feels offended by "normal" nudity should not click the following link. Everyone else should enjoy this fine piece of CSS art.]]></description> <content:encoded><![CDATA[<p>Well this concept has been new to me and it probably is for you as well. Everyone who feels offended by &#8220;normal&#8221; nudity should not click the following link. Everyone else should enjoy this fine piece of CSS art.</p><p>You see a puppet with clothes, by moving the bar to scroll the page you unclothe the puppet. Head over to biocandy.dk for this.</p><p>Update: CSS Naked day, or CSS Nudity, is a day long event where websites turn off their CSS for a day. The basic idea behind the day is to &#8220;promote web standards&#8221;.</p><p>There are actually several initiatives on play. The official day for the event is April 9. All that needs to be done on the day is to turn all Cascading Style Sheets off for the day. This may break some sites that rely on CSS for functionality. Webmasters with the intention to participate in the event should test their site&#8217;s layout first before they turn it off.</p><p>Websites seem to have been changed for the event. The event site for 2011 <a
href="http://naked.threepixeldrift.com/">is here</a>, the one for previous years <a
href="http://naked.dustindiaz.com/">here</a>.</p><p>It is not really clear if the event will take place in 2012 as well. It is likely that it does, but I was not able to find any information about it on the Internet.</p><p>You obviously do not need organization to turn your website&#8217;s CSS off on April 9, but it certainly would feel better if other webmasters would do the same on their sites.</p><p>Twitter, usually buzzing with news, is quiet right now.</p> ]]></content:encoded> <wfw:commentRss>http://www.ghacks.net/2005/11/30/css-nudity/feed/</wfw:commentRss> <slash:comments>1</slash:comments> </item> </channel> </rss>
