Mittwoch, 18. November 2009

IE7 Row Bug?

Hi,

while working on a new website I came along a, what some might say, IE7 Bug. Now, IE7 is not known for not having any bugs, so this may be not a new issue, but since I read in some forums about people having similar problems, I desided to break to my HTML code and deliver the web a solution for that "bug".

What is it about?
The Website I'm working on has to have a height of 100% of the viewport (at least) and has a header, a sidebar on the left and a content area.
The header must have a specific height, in this example it's 40px, while the other two areas should take the rest of the height available espacially the content area.
To achieve this, I decided to use a layout TABLE (don't tell me ;-), as using DIVs is kind of tricky when you want to use "all the rest of the height" somewhere in the document (if you know better please leave a comment!).

I thought this is straight forward and I wrote the following Markup:


<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN"
"http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd">

<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="de">
<head>
<meta http-equiv="content-type" content="text/xhtml+xml; charset=utf-8"></meta>
<title>IE7 Row Bug?</title>

<style type="text/css" media="screen">
html, body, table, td, tr {
margin: 0;
padding: 0;
}
html, body {
height: 100%;
}
table {
border-collapse: collapse;
}
table td {
vertical-align: top;
}
#bad-layout-table {
width: 700px;
background: #556688;
height: 100%;
}
#bad-layouts-table-header-row {
background: red;
}
#header-menu {
height: 40px;
background: #adad99;
}
#left-items-wrapper-cell {
width: 168px;
background: #fff;
}
#content-wrapper-cell {
padding: 1em;
border-top: 1px dashed white;
height: 100%;
}
</style>
</head>

<body>
<table id="bad-layout-table">
<tr id="bad-layouts-table-header-row">
<td colspan="2" id="header-wrapper-cell">
<div id="header-menu">
The Header Menu in the main row
</div>
</td>
</tr>
<tr id="bad-layouts-table-main-row">
<td id="left-items-wrapper-cell">
<p style="height: 250px;">
Some Info to the left
</p>
</td> <!-- End of left-items-wrapper-cell -->
<td id="content-wrapper-cell">
<h1>Some Dummy Content</h1>
<p style="height:200px">
Lorem ipsum dolor sit amet, consectetur
adipisicing elit, sed do eiusmod tempor
incididunt ut labore et dolore magna
aliqua. Ut enim ad minim veniam, quis
nostrud exercitation ullamco laboris nisi
ut aliquip ex ea commodo consequat.
Duis aute irure dolor in reprehenderit
in voluptate velit esse cillum dolore eu
fugiat nulla pariatur. Excepteur sint
occaecat cupidatat non proident, sunt in
culpa qui officia deserunt mollit anim
id est laborum.
</p>
</td> <!-- End of iframe-wrapper-cell -->
</tr>
</table> <!-- End of bad-layout-table -->

</body>
</html>

]]>


Me: "Man, that was easy! Give me a more difficult task!"
MS: "No problem dude! Try to make it compatible with IE7!"
Me: "Ohhh shit, I was hoping you wouldn't mention that, but OK, I'll try"

Yes, it works in every standard compliant browser, even IE7 looks good at first but then I realized the scroll bars, where there shouldn't be scroll bars.
It seems, that setting #content-wrapper-cell to height: 100% was no good, as IE7 sets the height to the height of the hole viewport, and that's why I had to scroll for 40px.

Well I'll shorten the story a bit:
What you can do, to give the second row (#bad-layouts-table-main-row) a height of the rest of the screen is the set

#bad-layouts-table-main-row {
height: 100%;
}

And remove the height anotation from #content-wrapper-cell

#content-wrapper-cell {
padding: 1em;
border-top: 1px dashed white;
height: 100%;
}


It's pretty streight forward, but I was wondering, as suddently the header row was heigher than 40px. I thought of padding, margin, some padding/margin defined inside the header, and lot's of other things. People where writing, they have the same problem, with giving some table element a "rest of the screen" height and that the row height seems to be always around some percantage more than it's defined in the css. Have a look at the screenshot with the red row between the header and the content area. This is actually the background of #bad-layouts-table-header-row. Tried lot's of CSS magic on that element.
What I find weird is, that setting height to 100% on the tables cell, makes the cell as high as the screen, but setting the 100% on the table row makes the row as high as the rest of the screen allows.

Now I think I spent enough time documenting this issue. Time to go on ;-)
cu

Sonntag, 15. November 2009

Donauinsel

Servus allerseits,
heute war schon zum dritten Mal diese Woche ein sonniger Tag und da ich gestern einigermaßen gut mit meiner Studienarbeit vorangekommen bin, gönnte ich mir einen Day Off und fuhr auf die Donauinsel gefahren.
Eigentlich wollte ich rauf zur Schleuse fahren und dann wieder zurück. Hab das schon mal mit Inlinern gemacht. Von der U6 sind das fast 6,5km in eine Richtung und der Weg ist recht eben, so dass man auch durch's ständige anstoßen etwas ins Schwitzen kommt.
Auf der Donauinsel hab ich aber gesehen, das es Flöße auf der Neuen Donau gibt. Letztes Jahr hab ich die irgendwie verpasst, da wollte ich nämlich mit meiner Freundin auf so ein Floß drauf, aber sie waren wohl schon abmontiert.
Bin dann gleich auf so ein Ding drauf um etwas zu chillen, bevor ich die Reise zur Schleuse antreten würde, wie ich da noch dachte, doch sah ich von dort aus große Lenkdrachen, etwa 1km weiter am Himmel und so bin ich da gleich mal hin um mir das mal anzuschauen. Hatte diese schon öfters mal gesehen, aber nie bin ich hingegangen.
Dort hat sich rausgestellt, dass die Leute nicht nur Lenkdrachen haben, sondern auch noch Räder unter den Füßen, wie man auf den Bildern sieht.
Der Platz war auch cool. Ich war natürlich mit dem Longboard unterwegs und habe dann den Rucksack auf die Wiese geschmissen und ein paar Runden auf dem Platz gedreht. Hab einfach mal versucht, ander herum zu fahren, also mit Rechts vorne, was gar nicht so leicht ist. Es war als hätte ich zum ersten mal ein Brett unter den Füßen. Dann hab ich noch versucht ein Slide hinzubekommen. Ich finds immer cool wenn andere damit Bremsen, oder einfach mal so machen, aber es sieht so aus, dass ich zu blöd dafür bin. Zumindest ist es mir nicht gelungen. Ich kann mir vorstellen, dass es aufgrund meiner Größe etwas schwerer ist, und vielleicht kommt noch dazu, dass meine Lenkung ganz weich eingestellt ist, aber vielleicht check ich's einfach nicht.
So oder so, es hat einfach Spaß gemacht auch ganz simple Sachen einfach mal genauer auszuprobieren. Das war schließlich der erste Tag seit jetzt Foto gemacht von Sebastian. Vielen Dank.inzwischen zwei Monaten, an dem ich mir Zeit genommen hatte das Longboard einfach mal so auszuprobieren. Davor bin ich nur damit gefahren und habe nicht wirklich ausprobiert, wie weit ich mich in eine Kurve legen kann, oder eben wie man ein Slide macht.
Dann hab ich noch den Sebastian kennengelernt. Er hat mir Fotos mit seiner Kamera gemacht und mir auf einer Compact Flash geschenkt, was ich ur cool finde. Bin mit ihm ins Gespräch gekommen und er ist echt sehr sympatisch. Einige unserer Interessen überschneiden sich, wie z.B. Klettern und so gehen wir diese Woche vielleicht mal gemeinsam bouldern. Etwas was ich schon zu lange vernachlässigt habe.
Foto gemacht von Sebastian. Vielen Dank.Er hat aber auch so ein Drachen und vielleicht kann ich den auch mal ausprobieren, dass wär mal der Hammer.
Von ihm hab ich auch erfahren, dass so ein Grundequipment gar nicht so teuer ist. ca. 120€ für den Drachen mit Haltern und so, halt ohne Board, wobei ich denke, dass es erst mal wichtig ist gut mit dem Drachen zurecht zu kommen.


Bin dann jedenfalls auf dem Platz geblieben und nicht zur Schleuse hochgefahren. Schaut Euch die Bilder an! Es war echt super warm und der Himmel war so blau.
Ich war fast den ganzen Tag draußen und bin jetzt total müde obwohl es erst kurz nach 21 Uhr ist.

Ich füg jetzt noch ein paar Bilder hinzu und dann ab ins Bett, denn morgen steh ich wohl so gegen halb 7 auf

Wünsch Euch was
bis denne

Dienstag, 10. November 2009

Lenkgummi

Im letzten Blogpost schrieb ich darüber wie mein Lenkgummi kaputt ging. Hier mal ein Bild von dem Teil.
Hab mir inzwischen neue geholt.
Grund war einfach, dass ich es zu fest angezogen hatte. War aber auch komisch, weil selbst so fest angezogen waren die Gummis total weich, obwohl sie vor der Schmierung genau richtig waren.
Hab mir jetzt schwarze geholt. Das sind anscheinend die härtesten und ich komme damit einigermaßen gut zurecht. Kann halt nicht so viel damit herumfahren um mich daran zu gewöhnen, weil's hier oft regnet.
Sonne hab ich gestern Seit 2 Wochen übrigens auch zum ersten mal gesehen, weil es hier die ganze Zeit total zu mit Wolken ist.
Bis gestreut wird werd ich auf jeden Fall jede Gelegenheit nutzen.