<?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>Web Design Marquette, MI &#124; Middle Ear Media &#187; CSS</title>
	<atom:link href="http://middleearmedia.com/tag/css/feed/" rel="self" type="application/rss+xml" />
	<link>http://middleearmedia.com</link>
	<description>Middle Ear Media of Marquette, Michigan specializes in professional web development and creative website design.</description>
	<lastBuildDate>Mon, 30 Jan 2012 22:37:42 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	
		<item>
		<title>HTML5 To-do List</title>
		<link>http://middleearmedia.com/html5-to-do-list/</link>
		<comments>http://middleearmedia.com/html5-to-do-list/#comments</comments>
		<pubDate>Wed, 21 Dec 2011 20:40:15 +0000</pubDate>
		<dc:creator>obadiah</dc:creator>
				<category><![CDATA[Web Design]]></category>
		<category><![CDATA[Content Editable]]></category>
		<category><![CDATA[CSS]]></category>
		<category><![CDATA[CSS3]]></category>
		<category><![CDATA[HTML]]></category>
		<category><![CDATA[HTML5]]></category>
		<category><![CDATA[JavaScript]]></category>
		<category><![CDATA[JQuery]]></category>
		<category><![CDATA[Local Storage]]></category>
		<category><![CDATA[Marquette]]></category>
		<category><![CDATA[Michigan]]></category>
		<category><![CDATA[Task Management]]></category>
		<category><![CDATA[To-do List]]></category>
		<category><![CDATA[Web App]]></category>

		<guid isPermaLink="false">http://middleearmedia.com/?p=1198</guid>
		<description><![CDATA[The underlying programming languages that make the web what it is have been evolving over the years, but never have they been as powerful as they are now. While these new abilities are great, it’s not very practical to use them unless there is cross-browser support. Lucky for us the newer versions of most major [...]]]></description>
			<content:encoded><![CDATA[<!-- Start Shareaholic LikeButtonSetTop --><!-- End Shareaholic LikeButtonSetTop --><p>The underlying programming languages that make the web what it is have been evolving over the years, but never have they been as powerful as they are now. While these new abilities are great, it’s not very practical to use them unless there is cross-browser support. Lucky for us the newer versions of most major browsers have decent support for these features. Also, fall-backs can be used to ensure a decent experience for people using older browsers.</p>
<p><img class="post-image" title="HTML5 To-do List" src="/Assets/images/to-do1.jpg" alt="HTML5 To-do List" /></p>
<p><span id="more-1198"></span></p>
<p>I’ve been tinkering around with HTML5 lately, and decided to create a simple to-do list to demonstrate some of the new features. Along the way, I realized which features would be most useful and added them. At some point, probably after hammering out the style sheet, it became clear that this was now more than a to-do list, it was a <em>Task Management App</em>. </p>
<p>Full Disclosure: I normally make my to-do lists with pen and paper, but I’ve been using this one for several months now and really enjoy the interface.</p>
<p>So let’s take a look at the <a class="" href="http://middleearmedia.com/to-do/" title="Try out my Task Management App" target="_blank">Task Management App</a> I put together with <a href="http://en.wikipedia.org/wiki/HTML5">HTML5</a>, <a href="http://www.css3.info/">CSS3</a>, and the popular JavaScript Library called <a href="http://jquery.com/">jQuery</a>.  </p>
<h3>Fast Loading Web Page</h3>
<p>My To-do List is fast loading. It contains no images at the moment. All graphics are the result of CSS styles which are rendered in the browser very quickly. </p>
<h3>Sortable List Items</h3>
<p>With the help of some JavaScript, users are able to drag and drop list items to alter their order. They are automatically renumbered. Because many of my list items usually linger for extended periods, my lists can become quite lengthy. I found myself adding new list items only to scroll down and drag them up to the top every time. To avoid this repetitive action, new list items now appear at the top instead of the bottom.</p>
<p><img class="post-image" title="HTML5 To-do List" src="/Assets/images/to-do2.jpg" alt="HTML5 To-do List" /></p>
<h3>Editable Content</h3>
<p>Thanks to the HTML5 feature called content editable, the list items can be edited by a user simply by clicking on the text of the list item. Once the text has been edited, the user has the option to save or cancel. Notice that each word is automatically capitalized to increase readability.</p>
<p><img class="post-image" title="HTML5 To-do List" src="/Assets/images/to-do3.jpg" alt="HTML5 To-do List" /></p>
<h3>Local Storage</h3>
<p>For a to-do list to work properly, it’s essential that the list items are remembered somehow. This is accomplished with local storage, an HTML5 API that gives web developers the ability to store up to 5MB on a users local machine. So your list will still be there when you return. The list data is stored client-side (in the user’s browser) so no worries about other people going to the site and seeing your list items. </p>
<p><img class="post-image" title="HTML5 To-do List" src="/Assets/images/to-do5.jpg" alt="HTML5 To-do List" /></p>
<h3>Complete Feature List</h3>
<ul>
<li>Fast Loading Page</li>
<li>Local Storage</li>
<li>Sortable List Items</li>
<li>Editable Content</li>
<li>Removable List Items</li>
<li>New List Items Prepended (added to top of list)</li>
<li>Each Word Automatically Capitalized</li>
<li>Pseudo Element Based Numbers (:before)</li>
<li>Clear All Button</li>
<li>Donation Button (Support Creativity!)</li>
<li>Border Radius</li>
<li>Box Shadow</li>
<li>Text Shadow</li>
</ul>
<h3>Features Wishlist</h3>
<ul>
<li>Better Print Styles</li>
<li>Multiple Lists (for different purposes)</li>
<li>Removed List Items Are Saved (in separate “Done” List)</li>
<li>Optional Time/Date-Based Deadlines For Each Item</li>
<li>E-mail Notification of Upcoming Deadlines</li>
</ul>
<p>I know it’s really nothing to write home to Mom about, but since I found it useful, I thought I’d share. Try out my Task Management App for yourself. If you like it, consider it my gift to you for the holidays. Also, If you have any suggestions for more features, please let me know and I’ll try to incorporate them in future versions.</p>
<p><a class="more-link" href="http://middleearmedia.com/to-do/" title="Try out my Task Management App">Task Management App</a></p>
<div class="shr-publisher-1198"></div><!-- Start Shareaholic LikeButtonSetBottom --><!-- End Shareaholic LikeButtonSetBottom -->]]></content:encoded>
			<wfw:commentRss>http://middleearmedia.com/html5-to-do-list/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Dead River Coffee</title>
		<link>http://middleearmedia.com/dead-river-coffee/</link>
		<comments>http://middleearmedia.com/dead-river-coffee/#comments</comments>
		<pubDate>Mon, 10 Jan 2011 13:41:03 +0000</pubDate>
		<dc:creator>obadiah</dc:creator>
				<category><![CDATA[Web Design]]></category>
		<category><![CDATA[CMS]]></category>
		<category><![CDATA[CSS]]></category>
		<category><![CDATA[Dead River Coffee]]></category>
		<category><![CDATA[E-commerce]]></category>
		<category><![CDATA[Marquette]]></category>
		<category><![CDATA[Michigan]]></category>
		<category><![CDATA[WordPress]]></category>

		<guid isPermaLink="false">http://middleearmedia.com/?p=1005</guid>
		<description><![CDATA[I’m very pleased to announce the roll out of an e-commerce website for Dead River Coffee. They are located downtown Marquette, Michigan and are the area’s premiere coffee roasters. Go ahead, ask anybody. For years, the only way to get your hands on their fresh roasted coffee beans was to drive down to their shop [...]]]></description>
			<content:encoded><![CDATA[<!-- Start Shareaholic LikeButtonSetTop --><!-- End Shareaholic LikeButtonSetTop --><p>I’m very pleased to announce the roll out of an e-commerce website for <em>Dead River Coffee</em>. They are located downtown Marquette, Michigan and are the area’s premiere coffee roasters. Go ahead, ask anybody. For years, the only way to get your hands on their fresh roasted coffee beans was to drive down to their shop and pick it up. Now this great coffee is available to the world at the click of a button.</p>
<p><img class="post-image" title="Dead River Coffee" src="/Assets/images/deadrivercoffee1.jpg" alt="Dead River Coffee" /><br />
<span id="more-1005"></span></p>
<p>The site was designed with stark minimalist intention and a purposeful simplicity to invoke a simpler time. The color scheme consists of only black, gray, and cream. The background is a textured cream color. The logo at the top is the same logo they use to stamp on a plain brown bag before filling it with the coffee beans of your choice. The logo, tag lines, page titles, and all other text are either black or gray. </p>
<p>Embellishments include the prominent use of tag lines in the header and footer, a large ring-shaped coffee stain in the upper left of the header, a custom coffee cup with coffee stain under it that separates the footer from the content of each page, and the one pound and half pound bags full of beans that overlap the photos on the product pages. </p>
<p>Also featured is a horizontal drop down navigation menu located under the header, a three-column layout for the main page, and beautiful black and white photos scattered throughout the site. </p>
<p>WordPress was used as the <acronym title="Content Management System">CMS</acronym>. Several things were made possible by this including movable modules and dynamic content on the main page. The movable modules are actually text widgets that can be easily rearranged or exchanged in the administration panel of WordPress. Some of the content on the main page is added dynamically by pulling content from the “About” page and the “Order” page. Also, there is blogging functionality. The posts gets displayed in the “latest news” section.</p>
<p><img class="post-image" title="Dead River Coffee" src="/Assets/images/deadrivercoffee2.jpg" alt="Dead River Coffee" /></p>
<p>I used some <acronym title="Cascading Style Sheet">CSS</acronym> styling techniques to make adding new photos easier. New photos added to the main page are automatically re-sized to match the width of the columns while still retaining their original ratio. Also, a thin dark border is added to all photos for consistency.</p>
<p>Last but not least, this is a fully functioning, fully integrated e-commerce site. The ordering process works precisely as one would expect. From each individual product page, or from the main order page that lists all products, a visitor can select one-pound or half-pound as the size and hit the “add to cart” button to begin the ordering process. </p>
<p>A shopping cart opens up as a modal window and displays all items in the cart, quantity, price and subtotal. It allows the visitor to modify the quantity, and displays an updated price and subtotal. By pressing the “check out” button, the visitor is taken to the “check out” page which is fully integrated with the same look as the rest of the site. </p>
<p>From here, the visitor can securely enter their private information. After filling in the “City”, “State”, and “Postal Code” fields, shipping is automatically calculated and a new total is displayed. By clicking “confirm your order” the transaction is sent to be processed and the visitor is shown a receipt page they can print for their records. An email receipt is also sent to the visitor.  </p>
<p>The layout was designed to be flexible and allow for growth of content in the future. The site is being maintained by Theo at <em>Dead River Coffee</em> so bookmark it and check back often for updates. Seriously, if you like fresh roasted coffee beans, this is the place for you!</p>
<p>Check out <a href="http://deadrivercoffee.com/" title="Visit deadrivercoffee.com" class="more-link">deadrivercoffee.com</a> to see the web site for yourself. </p>
<div class="shr-publisher-1005"></div><!-- Start Shareaholic LikeButtonSetBottom --><!-- End Shareaholic LikeButtonSetBottom -->]]></content:encoded>
			<wfw:commentRss>http://middleearmedia.com/dead-river-coffee/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>CSS Sprites technique used on haidabo.com</title>
		<link>http://middleearmedia.com/css-sprites-technique-used-on-haidabo-com/</link>
		<comments>http://middleearmedia.com/css-sprites-technique-used-on-haidabo-com/#comments</comments>
		<pubDate>Tue, 17 Nov 2009 16:44:22 +0000</pubDate>
		<dc:creator>obadiah</dc:creator>
				<category><![CDATA[Web Design]]></category>
		<category><![CDATA[CSS]]></category>
		<category><![CDATA[CSS Sprites]]></category>
		<category><![CDATA[RSS]]></category>

		<guid isPermaLink="false">http://www.middleearmedia.com/?p=387</guid>
		<description><![CDATA[After being inspired the other day, I decided it was time to design a new personal site. I’ve owned the domain haidabo.com for a while, but wasn’t really sure what to do with it until now. So, it has become a place to showcase my various projects as well as aggregate RSS feeds from all [...]]]></description>
			<content:encoded><![CDATA[<!-- Start Shareaholic LikeButtonSetTop --><!-- End Shareaholic LikeButtonSetTop --><p>After being inspired the other day, I decided it was time to design a new personal site. I’ve owned the domain haidabo.com for a while, but wasn’t really sure what to do with it until now. So, it has become a place to showcase my various projects as well as aggregate RSS feeds from all of my sites with dynamically updated content.</p>
<p><img src="/Assets/images/haidabo1.jpg" alt="Screenshot of haidabo.com" title="Screenshot of haidabo.com" class="post-image"/><br />
<span id="more-387"></span></p>
<p>While I was designing haidabo.com, I used a technique that I’d like to share called CSS Sprites. This wasn’t my first time using sprites, but it was the first time I planned on using them to this extent. My goal was to create the entire website using only one image. How is that possible? A sprite is a large image that contains many smaller images inside it. So, I created all of the images for the site and placed them all inside one large PNG24 image with a transparent background. </p>
<p><img src="/Assets/images/haidabo-sprite.jpg" alt="Sprite from haidabo.com" title="Sprite from haidabo.com" class="post-image"/></p>
<p>When calling for an image (any image) in the CSS file, specify the sprite as the background image and give it a width and height. Then use unique IDs or classes to shift the background position specifically for each image. One problem I ran into during this process was repeating backgrounds. Sprites don’t work well for repeating images. They do have some limited ability to repeat one-dimensionally, but it’s tricky. To keep it simple, I decided to use separate images for my repeating backgrounds.</p>
<p>So, why would anyone want to use this technique? Sure, it’s a bit more work to combine all your images and set all those background positions, but in the end it will make your website more efficient. Each image that is loaded on your site requires a separate HTTP-Request (to your server). By combining images into a sprite, you reduce the amount of work your server is required to do. This may not make much of a difference for a small site without much traffic, but as the size of the site and the amount of traffic increase, this becomes more of a benefit.</p>
<p><a href="http://www.haidabo.com" class="more-link" title="Visit haidabo.com" target="_blank">haidabo.com</a></p>
<div class="shr-publisher-387"></div><!-- Start Shareaholic LikeButtonSetBottom --><!-- End Shareaholic LikeButtonSetBottom -->]]></content:encoded>
			<wfw:commentRss>http://middleearmedia.com/css-sprites-technique-used-on-haidabo-com/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>

