Archive for the ‘Pelicar’ Category

Websites being converted to Standards mode and my struggles with it.

Saturday, April 7th, 2007

Well, (why I do I start everything I start talking about with “Well”.. well, I don’t know) I decided this week to try and convert the www.pelicar.info site from using frames for its presentation to DIV containers and CSS to achieve the same thing as best I could. In the end, I think I have achieved this. The website still has a left-hand menu that stays in place while scrolling the main contents. Also, the address bar will actually show the proper URL for the page and if you do a browser refresh, the current page will display again and not go back to the home page. Before, to refresh the main content, you had right-click within that frame and then choose refresh. Most folks are not accustomed to doing that, however. This also makes bookmarking a specific page much easier and is a bit more compatible with search engines.

Luckily, no-one is using older browsers such as IE5 or at least very few. When they scroll on the page the menu will go up along with everything else. Another thing that changes are some layout/rendering differences. The reason.. it has to do with the difference between Quirks and Standards mode. In fact, depending on the DOCTYPE of the page, IE6 and 7 can be made to function in Quirks mode or Standards mode. Following are a couple resources that explain the differences:

Quirks Mode vs Standards Mode – overview
The Box Models – Standard vs Quirks

So, in Quirks mode the border and padding are inside the Width you give an element which means you are giving it the width that everything should take up, while in Standards mode the border and padding are outside the Width you give to an element. Here you are specifying the width of the content only.

This difference in the box model caused some issues dealing with paragraphs that contain italicized text. I kept noticing some pages had a horizontal scroll bar at the bottom of the page for apparently no reason that would only scroll for a couple pixels… nothing was extending past the right edge. I was going nuts loco. I also noticed that as I narrowed the browser window where a paragraph contained some italics and was flowing around a picture, the picture would sometimes jump below the paragraph! (Here’s that page) Googling around, I stumbled upon this article: IE and Italics. I had to add a style to combat it:

/* Doing overflow:hidden to correct IE and italics rendering issues */
P {
  overflow: hidden;
}

There might be a better way as this does cause it to chop the text off.. but it stopped the weird behavior for now. Changing the padding on my divs might solve it but I was tired of messing with it after that worked.

Another thing I changed was to use relative font sizing instead of fixed point or pt sizing. Well, this opened up another can of worms I wasn’t expecting. There was a page that contained several table (the New Creatures page) and I had defined the TD element with this style:

TD, TH { font-family: Arial; font-size: 0.80em; }

Which makes the font 80% smaller than the main body font which is 1.0em (by the way em refers to the size that a capitol letter “M” takes up). But, the text in one table looked much smaller than it should. Well, as it turns out, that table had a table within a table on the left, and the right had text explaining the items in the table. The text everywhere was too small. Turned out to be a problem of inheritance. This page explains it: Relative font sizes and inheritance. Since the font of the first TD was reduced by 80%, that is now considered the base font size for everything in that element. The nested table caused its text to be further reduced another 20%. I fixed the problem with the nested table by doing the following:

TD, TH { font-family: Arial; font-size: 0.80em; } 
TD TD, TD TH { font-size: 1.0em; }

This keeps the nested TD element with the same base TD size of 0.80em instead of reducing it again. To fix the normal text that I did not want to be reduced in size by the initial 80% I made its TD element like this:

<td STYLE="font-family: Times New Roman; font-size:1.0em;">

Problems solved! :grin:

I am also in the middle of changing my main website to run in Standards mode as well and cleaning up some of the 15 year old coding in some places… like closing paragraph tags and other things LOL. I don’t know if I can keep it looking the same if I get rid of the frames, namely due to the embedded media player in the bottom-left frame. Just don’t think there’s a way without frames to keep a song playing around while browsing, unless the player is loaded in a separate pop-up or browser window which I don’t really like. Hmmmm.. Anyway, all for now I guess.

News archives imported into blog, work done on websites, thoughts about job hunting.

Wednesday, March 28th, 2007

I have put all my old News items from my website into the blog here.  The Wordpress visual editor helped out with this (but also caused some problems).  It helped in that I was able to copy the contents from my web browser and then paste it into the editor.  All the relative links were automatically converted to absolute links and the underlying code such as definition lists were also kept.  I did have to tweak the 2005 and earlier archives as they used a javascript toggling feature to expand/contract sections.  The editor would keep messing up the javascript when saving.  Anyway, I eventually solved that whole problem by just adding that javascript to the blog’s header theme file.  Now it’s available for any page I need to use it on.  I also changed the default style for DT and DD elements.

I have still not begun actively looking for a job; however, that does not mean I have not been doing any “work”, at least recently.  I decided a couple weeks ago after I got back from getting over the oral surgery, that I would spend a day’s worth of work on my website endeavors to get me back into the work frame of mind (as opposed to veggin’ out in front of the tv) and to keep my programming skills fresh and my mind from going stale, if I am not involved in the “looking for a job” activities.  I’ve been out of work since November, if you remember.  Financially I am still okay.  I could probably go 5 months without finding a new job.. and still not use any of my credit cards.  But, I don’t want it to go that long.  Thank god I am debt free.. no car payments or credit card balances.

Anyway, what have I done during the past couple weeks:

  1. Added a new database to my main website to keep track of spammers trying to post junk into my Guestbook.  I’m recording their IP address, hostname, date/time, and why the post failed.  Then, any sufficiently abusing or re-occuring IP address or range can be banned in my .htaccess file.  This was a combination of PHP and MySQL stuff.
  2. Modified my NASCAR page (PHP) to grab the name of the latest race that the driver standings are based from.  Mom asked if I could do that and obliged.
  3. Over on the Pelicar Forum, I added the ability for users to tell when their private messages had been received/read by the recipient.  Amazingly, there were no existing SMF MODs to accomplish this. So, I figured it out myself!  Ha! :) This was a combination PHP and MySQL thing.  Being that we do alot of role-playing on the forum, I added a couple drop-down boxes to the posting form to choose your character’s post color.
  4. On the Pelicar Campaign website, I added the ability to see the updated Devotion Point chart and added a general Notes field to the character storage so we could put any information (spells, equipment, goals, skills, trainging reminders, etc). Corrected the Strength and Stamina tables with new information.  I did not include a link since it’s password protected anyway. 
  5. I also just recently created a MySpace page.  Well, I wanted to put on there my most recently played/currently playing song in Winamp in the Music section and I wanted to put my recent blog enteries’ headlines on here, there and not use the MySpace blog.  I also wanted to adjust the appearance somewhat which took some research into how to change the styles within the page using inline CSS.

    Well, my Winamp currently playing/recently played image is a dynamically created image using a PHP script.. only problem is, MySpace doesn’t allow you to reference a PHP file in an image tag, which I don’t blame them.  So.. what to do?  Well, I renamed the PHP file to have a .TIF extension and then edited the .htaccess file on the webserver to make it handle .TIF files as PHP files and run them through the PHP5 handler.  Problem solved.

    Getting the Wordpress blog entries to appear on MySpace also took some trickery.  Since MySpace doesn’t work with RSS feeds from other sources, I had to reference a dynamically created image using the .TIF method again and the PHP script would handle parsing the RSS feed from here and constructing an image based from it and sending that image out.  I’ll make a separate page on here that describes that whole process and source code as I’m sure other Wordpress bloggers would be interested.

So, as you can see, I have not been doing nothing.  The next thing I need to do is start waking up at around 7:00am each morning to get myself back on a “normal” schedule. My sleeping habits are so screwed up.. no consistency from day to day and even a few all nighters when I’ve become so involved working on something.  I think I should make my “job” next week to look for a job and to figure out what kind of job do I really want and/or willing to do.  All for now.. :)