After the last tribulation (a not working DownRight v2.1 - in MIE5/6, that is!) here is a new DownRight (fixed 960px width) v3.0. [ click image to view DownRight v3.0 page ] At work The White Knight Is Talking Backwards ... so I cannot find the serenity to tackle the little v2.1 bugger. I'll visit my cherished Skiermûntseach first (a tranquil Week Off: strolling the beach - enjoying my company - reading Pratchett - flying my kites) ... ! |
Thursday, April 19, 2007
DownRight v3.0
Posted by
thur
at
9:39 PM
67
comments
Saturday, March 24, 2007
DownRight v2.1
March 29: I was told (and I have noticed) this new DownRight v2.1 Theme doesn't work correctly in MIE < 7! So the template is down for now. And I will fix this, of course. I do apologize to the folks who have tried this v2.1! Hi Thur, I use your Downright v1.4 on my blog Bonnie Writes. I would like to make the whole thing fixed, like you use here on the Blogger Workshop, rather than the fluid that it is now. Can you tell me what to do to change that please. Because of SEO, I want to have the main load first, [...] . Thank you for your help, in advance! Hi Bonnie, [ status: completed! ] [ click image to view DownRight v1.4 page ] [ click image to view DownRight v2.1 page ] ![]() As promised I have copied the original DownRight v1.4, and made some alterations using negative margins, any order columns and opposite floats (as I gratefully learned from Alessandro Fulciniti)! Resulting in a DownRight v2.1 Blogger Theme featuring: 3-columnHere is the xml MarkUp: <!-- start content --> <div id='content_wrap'> <!-- start header --> <div id='header_wrap'> </div> <!-- end header --> <!-- start main --> <div id='main_wrap'> </div> <!-- end main --> <!-- start left sidebar --> <div id='leftbar_wrap'> </div> <!-- end left sidebar --> <!-- start right sidebar --> <div id='rightbar_wrap'> </div> <!-- end right sidebar --> <!-- start #footer --> <div id='footer_wrap'> lt;/div> <!-- end #footer --> </div> <!-- end content --> I have tested the v2.1 in MIE 5/6/7, FireFox and Opera (not in Safari!!!). Notice: Because the margin settings are very very strict one should not set any border-width to 0px. Alter the border-color to match the page-background-color instead! |
Posted by
thur
at
5:25 PM
40
comments
Tuesday, March 06, 2007
Creating a Blogger Template (4)
... Variables ... This is the fourth part of the Creating A Blogger Template series: Creating a Blogger Template (1) - from scratch Creating a Blogger Template (2) - the layout Creating a Blogger Template (3) - a fluid design Creating a Blogger Template (4) - variables Hmmm ... this is (on my account) a rather superfluous thread. All I have to do is point to Google Help > Blogger Help > Working with Blogger > Layouts > Fonts and Colors Tags for Layouts, but this one makes the CaBT tutorials a circle! A big advantage of the Blogger Layout Feature is the use of (though limited to only fonts and colors) Variables. (The other one: the Page Element Drag-and-Drop feature - limited within each Blogger Section.) As explained in the first CaBT: Notice <style type="text/css"> <!-- some css styling here --> </style> is replaced by <b:skin><![CDATA[/* */ <!-- some css styling here --> ]]></b:skin> The variables are added, embedded between the comment tags /* */, like this: <b:skin><![CDATA[/* Variable definitions*/ <!-- some css styling here --> ]]></b:skin> As you can see each Variable has a few obliged attributes: name: a (technical) unique ID;*) Attribute default explained: can be a color (a hexadecimal color code) or a font (font-style font-weight font-size font-family) value!!! Two examples (one for each type): <b:skin><![CDATA[/* Variable definitions*/ <!-- some css styling here --> ]]></b:skin> So-uhh, what's the catch? For each font or color in your CSS code you can use a pre-defined Variable! Two examples (one for each type): Instead of body { color: #CCC; font: italic bold x-small 'Trebuchet MS', Trebuchet, Verdana, Sans-serif; } one can write body { color: $textcolor; font: $bodyfont; } So you can define separate colors for fonts, links, hovers, backgrounds, borders, et cetera ... and separate fonts for posts, comments, links, sidebars, headers, et cetera, et cetera. And you don't have to dive into the xml template every time you feel the urge to change a font or a color. You can control all these in the Fonts and Colors tab on the Dashboard! Very neat. It really is a pity this handy gimmick is limited to only two types! What's left, I guess, is learning and understanding CSS. There are plenty of fine css-link-lists out there! Some reading: CSS Beginner Tutorial | HTML Dog CSS Intermediate Tutorial | HTML Dog CSS Advanced Tutorial | HTML Dog CSS Tutorial | W3Schools Newly Supported CSS Selectors in IE7 Floatutorial | Max Design A List Apart (hearty recommended!!!) and so on and so forth |
Monday, March 05, 2007
Creating a Blogger Template (3)
... a fluid design ... This is the third part of the Creating A Blogger Template series: Creating a Blogger Template (1) - from scratch Creating a Blogger Template (2) - the layout Creating a Blogger Template (3) - a fluid design Creating a Blogger Template (4) - variables "Yeah, right, of course ..." (you tell me) "That's all really nice and all ... but where is my flexible layout? I want it fluid ... fluid ... fluid ... ." The following layout styling was implemented: ( see Creating a Blogger Template (2) ) body { margin: 0px; padding: 0px; } #container { width: 960px; margin: 10px auto; padding: 0 10px; } #header { padding: 10px; } #main { width: 560px; float: left; } #sidebar1, #sidebar2 { width: 190px; float: left; margin-left: 10px; } #footer { padding: 10px; clear: both; } To change this fixed layout into a flexible one (all columns fluid) only 3 attributes have to be altered: body { margin: 0px; padding: 0px; } #container { width: 96%; margin: 10px auto; padding: 0 10px; } #header { padding: 10px; } #main { width: 48%; float: left; } #sidebar1, #sidebar2 { width: 24%; float: left; margin-left: 10px; } #footer { padding: 10px; clear: both; } Again this is merely to show how it's done. Once the structure is created the fun part begins ... . Remember: all examples in the last 3 posts are (apart from the layout CSS as added in CaBT 2 & 3) still not styled at all. Everything is pure Browser Default! |
Sunday, March 04, 2007
Creating a Blogger Template (2)
... the layout ... This is the second part of the Creating A Blogger Template series: Creating a Blogger Template (1) - from scratch Creating a Blogger Template (2) - the layout Creating a Blogger Template (3) - a fluid design Creating a Blogger Template (4) - variables Let's introduce some basic CSS to give this rough and unformatted page a respectable and decent look! [ click image to view page ] First set the body margin and padding to zero: body { margin: 0px; padding: 0px; } Use a width (here 960px, so this layout works in a 1024 resolution minimum) and center the content (using margin-left and margin-right = auto): #container { width: 960px; margin: 10px auto; padding: 0 10px; } Give the header some inner space: #header { padding: 10px; } The important part! For positioning one can use floating divs here. Give main and sidebars their widths and add the floats and some margins: #main { width: 560px; float: left; } #sidebar1, #sidebar2 { width: 190px; float: left; margin-left: 10px; } (Notice both sidebars are styled the same, so we can use a shorthand here!) Some space inside the footer too, and a clear to make the footer the last one in the page flow: #footer { padding: 10px; clear: both; } Changing the above into a Column - Main - Column layout is really simple. Introducing one negative margin and one new margin: #main { width: 560px; float: left; margin-left: 200px; } #sidebar1 { margin-left: -760px; } #sidebar2 { margin-left: 10px; } #sidebar1, #sidebar2 { width: 190px; float: left; } These minor alterations (only two margin settings and necessarily changing the one sidebar shorthand) is all it takes to create the following Column - Main - Column skeleton: [ click image to view page ] Here in the rear I give you the Complete and Unabridged Template for this last layout. This is the one I used, so now naturally sidebars and footer do have some Page Elements included: <?xml version="1.0" encoding="UTF-8" ?> <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd"> <html xmlns='http://www.w3.org/1999/xhtml' xmlns:b='http://www.google.com/2005/gml/b' xmlns:data='http://www.google.com/2005/gml/data' xmlns:expr='http://www.google.com/2005/gml/expr'> <head> <b:include data='blog' name='all-head-content'/> <title><data:blog.pageTitle/></title> <b:skin><![CDATA[/* */ /***************************/ /* Thur Broeders */ /* march 2007 */ /* From Scratch v0.1 */ /* */ /* http://www.thurboeders.nl/ */ /* postmaster (at) thurbroeders (dot) nl */ /***************************/ body { margin: 0px; padding: 0px; } #container { width: 960px; margin: 10px auto; padding: 0 10px; } #header { padding: 10px; } #main { width: 560px; float: left; margin-left: 200px; } #sidebar1 { margin-left: -760px; } #sidebar2 { margin-left: 10px; } #sidebar1, #sidebar2 { width: 190px; float: left; } #footer { padding: 10px; clear: both; } ]]></b:skin> </head> <body> <!-- begin container --> <div id='container'> <!-- begin header --> <b:section class='header' id='header' maxwidgets='1' showaddelement='no'> <b:widget id='Header1' locked='true' title='' type='Header'/> </b:section> <!-- end header --> <!-- begin main --> <b:section class='main' id='main' showaddelement='no'> <b:widget id='Blog1' locked='true' title='Blog Posts' type='Blog'/> </b:section> <!-- end main --> <!-- begin sidebar1 --> <b:section class='sidebar' id='sidebar1'> <b:widget id='Label1' locked='false' title='Labels' type='Label'/> <b:widget id='BlogArchive1' locked='false' title='Blog Archive' type='BlogArchive'/> </b:section> <!-- end sidebar1 --> <!-- begin sidebar2 --> <b:section class='sidebar' id='sidebar2'> <b:widget id='AdSense1' locked='false' title='' type='AdSense'/> </b:section> <!-- end sidebar2 --> <!-- begin footer --> <b:section class='footer' id='footer'> <b:widget id='Text1' locked='false' title='' type='Text'/> </b:section> <!-- end footer --> </div> <!-- end container --> </body> </html> This all is not a True Guide nor a profound How-To! It is merely about the indispensable basics!! But it shows those basics are essentially all you need!!! |
Saturday, March 03, 2007
Creating a Blogger Template ...
... From scratch ... This is the first part of the Creating A Blogger Template series: Creating a Blogger Template (1) - from scratch Creating a Blogger Template (2) - the layout Creating a Blogger Template (3) - a fluid design Creating a Blogger Template (4) - variables As I wrote in the Wonderful Techniques post: can be pottered easily in(to) ... . Let's assume you have your own template: just a basic (x)html structure - created using a template generator or maybe you build it yourself or you probably borrowed it somewhere (in that case: be a sport and credit the original designer!). It should look somewhat like this: <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/xhtml"> <head> <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" /> <title></title> <style type="text/css"> <!-- some css styling here --> </style> </head> <body> <div id='container'> <div id='header'> </div> <div id='main'> </div> <div id='sidebar1'> </div> <div id='sidebar2'> </div> <div id='footer'> </div> </div> </body> </html> That's a rudimentary, clean, uncluttered template. It can easily be transformed into a Blogger Template. Takes only two steps! 1) Make this a eXtensible Markup Language (XML) document! Pick a Blogger Template (any!) and copy the necessary code, replacing the (X)HTML heading code with Blogger's XML heading code: <?xml version="1.0" encoding="UTF-8" ?> <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd"> <html xmlns='http://www.w3.org/1999/xhtml' xmlns:b='http://www.google.com/2005/gml/b' xmlns:data='http://www.google.com/2005/gml/data' xmlns:expr='http://www.google.com/2005/gml/expr'> <head> <b:include data='blog' name='all-head-content'/> <title><data:blog.pageTitle/></title> <b:skin><![CDATA[/* */ <!-- some css styling here --> ]]></b:skin> </head> <body> <div id='container'> <div id='header'> </div> <div id='main'> </div> <div id='sidebar1'> </div> <div id='sidebar2'> </div> <div id='footer'> </div> </div> </body> </html> Notice <style type="text/css"> <!-- some css styling here --> </style> is replaced by <b:skin><![CDATA[/* */ <!-- some css styling here --> ]]></b:skin> Yes, that's all. There you have it: a genuine XML Blogger Template ... . But empty! So now you should ... 2) add the Blogger Widgets to the body! As with the XML heading code you can copy the widgets (including the blogger section tags) from any default Blogger Template. Please read my Save The Widgets !!!. Make it a habit to comment your code! <?xml version="1.0" encoding="UTF-8" ?> <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd"> <html xmlns='http://www.w3.org/1999/xhtml' xmlns:b='http://www.google.com/2005/gml/b' xmlns:data='http://www.google.com/2005/gml/data' xmlns:expr='http://www.google.com/2005/gml/expr'> <head> <b:include data='blog' name='all-head-content'/> <title><data:blog.pageTitle/></title> <b:skin><![CDATA[/* */ <!-- some css styling here --> ]]></b:skin> </head> <body> <!-- begin container --> <div id='container'> <!-- begin header --> <b:section class='header' id='header' maxwidgets='1' showaddelement='no'> <b:widget id='Header1' locked='true' title='' type='Header'/> </b:section> <!-- end header --> <!-- begin main --> <b:section class='main' id='main' showaddelement='no'> <b:widget id='Blog1' locked='true' title='Blog Posts' type='Blog'/> </b:section> <!-- end main --> <!-- begin sidebar1 --> <b:section class='sidebar' id='sidebar1'/> <!-- end sidebar1 --> <!-- begin sidebar2 --> <b:section class='sidebar' id='sidebar2'/> <!-- end sidebar2 --> <!-- begin footer --> <b:section class='footer' id='footer'/> <!-- end footer --> </div> <!-- end container --> </body> </html> Notice it is sufficient to add only <b:section class='sidebar' id='sidebar1'/> <b:section class='sidebar' id='sidebar2'/> <b:section class='footer' id='footer'/> Once uploaded you can start to Add Page Element(s) there! This finished example really IS a WORKING Blogger Template - totally unformatted, of course - an adolescent, so to speak. I just copied that exact code (no more, no less - this sample blog has no css styling at all!!!) in a new testblog. See? Works! Footer and both sidebars are not visible because no Page Elements were added ... but they are present! ![]() That's how I pottered those Sample Techniques: n01, n16, n26 and n27! Borrowed some structures from Alessandro Fulciniti and made them into ready-to-use Blogger templates. Like I said before: you probably won't need us anymore! |
Wednesday, February 28, 2007
Sample Techniques
Here we go: all layouts fluid (or partly, in case of n16): The html structure is the same in all 4 pages - hence: any order columns!!! <body> <!-- begin container --> <div id='container'> <!-- begin header --> <div id='header'> </div> <!-- end header --> <!-- begin content --> <div id='content'> </div> <!-- end content --> <!-- begin column1 --> <div id='column1'> </div> <!-- end column1 --> <!-- begin column2 --> <div id='column2'> </div> <!-- end column2 --> <!-- begin footer --> <div id='footer'> </div> <!-- end footer --> </div> <!-- end container --> </body> There are only some differences (margin and width) in each layout's identifiers content, column1, column2 and footer. Works like a charm in MIE6/MIE7 and Firefox - almost perfect (good enough) in Opera. I haven't loaded them in Safari! And before I forget: here is a link to Alessandro Fulciniti's great page: Layout Gala: a collection of 40 CSS layouts based on the same markup and ready for download!. Err .. I guess you do not need me anymore :-) |
Posted by
thur
at
9:53 PM
6
comments
Saturday, February 03, 2007
Save The Widgets !!!
Yes, it's a gas! When (1) you are already using Ohhhhh bloody bloody no no NOOOOO (you shout) ... and totally panicked you press the CANCEL button! There is an easy way to save your current widgets. The first thing to comprehend is the way the template can be presented: with Expanded or Collapsed Widget code! Above the Edit Template Window you will find a Checkbox Expand Widget Templates. Unchecked (thus widget code collapsed) a widget looks like: <b:widget id='Label1' locked='false' title='Labels' type='Label'/> Checked (thus widget code expanded) that same widget looks like (may look like - depends on the inserted code, of course): <b:widget id='Label1' locked='false' title='Labels' type='Label'> <b:includable id='main'> <b:if cond='data:title'> <h2><data:title/></h2> </b:if> <div class='widget-content'> <ul> <b:loop values='data:labels' var='label'> <li> <b:if cond='data:blog.url == data:label.url'> <data:label.name/> <b:else/> <a expr:href='data:label.url'> <data:label.name/> </a> </b:if> (<data:label.count/>) </li> </b:loop> </ul> <b:include name='quickedit'/> </div> </b:includable> </b:widget> It is important to remember that, expanded or collapsed, the Widget Configuration Data is stored for you on the Blogger Server. Always! The process ... Saving your current template
Installing the new template
Done. That is: if you added all your existing Widgets you will not be bothered by this miserable Please confirm that the following widgets should be deleted. All the widgets' configuration data will be lost.! And if so: press CANCEL ... have a drink ... play with the dog ... love your partner ... have a cigar ... love the one you're with ... and START AGAIN Epilogue:
Those Blogger boys and girls did a great job !!! |
Posted by
thur
at
9:00 PM
19
comments
Sunday, January 28, 2007
Mea Culpa,
mea culpa, mea maxima culpa. More eager then inspired I published today successively a DownRight Theme version 1, version 1.0 and version 1.1. I know I have at least frustrated one person extremely ... I am so sorry Unscathed. What I did: publishing this Theme with the Widgets NOT expanded .. permitting the Blogger Engine to use defaults (thus losing my code changes)! I'm an OAF! Said again: Confiteor Deo omnipotenti,I have corrected my errors ... confessed my sins :-( What more can I say: the Proof of the Pudding is in these WorkShop Pages! |
Posted by
thur
at
10:51 PM
37
comments
Monday, December 04, 2006
How to use these templates in BETA Blogger
People are asking when these templates (my own, I mean, not the Minima and Rounders clones) will be ported to BETA Blogger.
![]() Here you have your good old system ... back again, thank Gods! ... with the BETA new feature DYNAMIC SERVING! (Now that's an uplift!) *) I am not very interested in BETA (at the moment). But if you are using the BETA templates ... BETA TIP I: When you are going to implement some code yourself (being third party or not) use a widget to add your code:
|
Posted by
thur
at
8:38 PM
17
comments
Labels: Blogger
Saturday, April 08, 2006
Maintaining the template offline
For some of you this really will be obvious ... for some it will not ...
OTHER BLOG MANAGEMENT SYSTEMS: When using WordPress, Serendipity, etc. or a real CMS (like Exponent, Joomla, whatnot) working offline is even more essential. A very easy-to-use and reliable way to get yourself a working APACHE + PHP + MySQL environment is installing XAMPP on your very own local machine! I suppose people who are able to work in an environment like this know what they are doing ... so here's just a few notes:
XAMPP Lite is a very reduced version of XAMPP with Apache 2.2.0 + PHP 5.1.1 (without PEAR) + MySQL 4.1.18 + PHPMyAdmin 2.7.0-pl1 + Openssl 0.9.8 + SQLite 2.8.15 + eAccelerator 0.9.4. For lovers! For the lite versions exist no upgrades or addons. XAMPP Lite is an only "Take-Run-Delete-Forget-it" package. |
Posted by
thur
at
10:56 AM
5
comments
Friday, March 24, 2006
Installing a new template in Blogger
Because there are questions about how to install a new template in Blogger here's a Quick Guide: |

















I am













