Hackerboard Wiki HaboBlog
Hackerboard bei Facebook Hackerboard bei Google+ Hackerboard bei Twitter

[HaBo]

 
(Web-) Design und webbasierte Sprachen Tipps & Tricks, Designabgleich, HTML & Javascript, Flash, ASP, PHP, Perl/CGI...

Fragen zu CSS und PHP: Aufbau einer Seite

Diskussion: Fragen zu CSS und PHP: Aufbau einer Seite im Forum (Web-) Design und webbasierte Sprachen, in der Kategorie Web, Network & Multimedia Palace; Anzeige Hi, ich habe eine HTML Seite, die über eine Tabelle 3 Bereiche baut: header, menu und inhalt. Ich hätte ...

Antwort
Alt 19.12.06, 21:15   #1 (permalink)
Senior Member
 
Registriert seit: 26.03.06
Serow Leistung: 8086
Likes: 16
Standard Fragen zu CSS und PHP: Aufbau einer Seite

Anzeige

Hi,
ich habe eine HTML Seite, die über eine Tabelle 3 Bereiche baut: header, menu und inhalt. Ich hätte aber gerne den Inhalt etwas besser vom Design getrennt mittels CSS. Hier die Seite:

Code:
<HTML>
<HEAD></HEAD>
<style>
h1 {
  font-size: 2em;
  text-align: center;
}

ul#menu {
  font-size: 0.8em;
  float: center;
  margin: 0; padding: 0;
  border: 0px dashed black;
}
ul#menu li {
  list-style: none;
  margin: 0; padding: 0.2em;
}
ul#menu a {
  display: block;
  padding: 0.2em;
  font-weight: bold;
}
ul#menu a:link {
  color: black; background-color: #5d87b0;
}
ul#menu a:visited {
  color: black; background-color: #5d87b0;
}
ul#menu a:hover {
  color: black; background-color: #72a0cb;
}


</style>
<BODY>
<TABLE WIDTH=800px HEIGHT=600px BORDER=1 CELLPADDING=0 CELLSPACING=0>
	<COL WIDTH=150*>
	<COL WIDTH=650*>
	<TR VALIGN=TOP>
		<TD ROWSPAN=2 WIDTH=150px HEIGHT=150px>
			<IMG SRC="./images/header.png" ALT="BILD HIER" WIDTH=150 HEIGHT=150>
		</TD>
		<TD WIDTH=650px HEIGHT=93px BGCOLOR=darkgray VALIGN=bottom>
			<h1>HEADER</h1>
		</TD>
	</TR>
	<TR>
		<TD WIDTH=650px HEIGHT=57px VALIGN=TOP BGCOLOR=#5d87b0>
			<P></P>
		</TD>
	</TR>
	<TR VALIGN=TOP>
		<TD WIDTH=150px BGCOLOR=#5d87b0>
			<ul id="menu">
				<li><a href="#"><p>MenuPunkt 1</p></a></li>
				<li><a href="#"><p>MenuPunkt 2</p></a></li>
				<li><a href="#"><p>MenuPunkt 3</p></a></li>
				<li><a href="#"><p>MenuPunkt 4</p></a></li>
				<li><a href="#"><p>MenuPunkt 5</p></a></li>
				<li><a href="#"><p>MenuPunkt 6</p></a></li>
			</ul>
		</TD>
		<TD WIDTH=640px BGCOLOR=lightgray>
			<P>Inhalt</P>
		</TD>
	</TR>
</TABLE>
<P><BR><BR>
</P>
</BODY>
</HTML>
Kann mir jemand sagen, was ich da verbessern kann? Ich würde später gerne inhalt-seiten mittels php-include einbinden. Klappt das überhaupt so wie ich das mache? Wie sehen die best practices aus?

mfg
serow
Serow ist offline   Mit Zitat antworten
Alt 19.12.06, 22:22   #2 (permalink)
LX
Moderator
 
Registriert seit: 14.02.06
LX Leistung: Z3
LX eine Nachricht über ICQ schicken LX eine Nachricht über AIM schicken LX eine Nachricht über Yahoo! schicken
Likes: 21
Standard

Im einfachsten Falle:

Code:
<html>
<head>
...
<style type="text/css">
#header {
  height: 100px;
}

#menu {
  width: 20%;
  float: left;
}

#content {
  width: 80%;
  margin-left: 20%;
}
</style>
</head>
<body>
<div id="header">hier kommt der Header rein</div>
<div id="menu"><ul><li>hier kommt das Menue rein</li></ul></div>
<div id="content">Hier kommt der Inhalt rein</div>
</body>
</html>
Ungetestet, aber das sollte in Grundzügen dem entsprechen, was du willst.
__________________
"Ever tried. Ever failed. No matter.
Try again. Fail again. Fail better."
- Samuel Beckett

JS BB LX UP
LX ist offline   Mit Zitat antworten
   
HaBOT
 
- Anzeige -

Werbung ist gerade online    
Alt 19.12.06, 23:19   #3 (permalink)
Senior Member
Themenstarter
 
Registriert seit: 26.03.06
Serow Leistung: 8086
Likes: 16
Standard

Ich habs jetzt mal etwas abgeändert, damit es etwas mehr so aussieht wie ich es mir vorstelle:
Code:
<html>
<head>
<style type="text/css">
#header {
  height: 150px;
  width: 800px;
}

#menu {
  width: 200;
  float: left;
}

#content {
  width: 600px;
  margin-left: 200;
}
</style>
</head>
<body>

<div id="header">
	<table border=1px width=100% height=150px cellspacing=0 cellpadding=0>
		<tr height=100px bgcolor=gray>
			<td>
				<p>hallo</p>
			</td>
		</tr>
		<tr height=50px bgcolor=lightgray>
			<td>
				<p></p>
			</td>		
		</tr>
	</table>
</div>

<div id="menu">
	<table border=1px width=100% height=600px cellspacing=0 cellpadding=0>
		<tr>
			<td valign=top>
				<ul>
					<li>Menu 1</li>
					<li>Menu 2</li>
					<li>Menu 3</li>
					<li>Menu 4</li>
					<li>Menu 5</li>
				</ul>
			</td>
		</tr>
	</table>
</div>

<div id="content">	
	<table border=1px width=100% height=600px cellspacing=0 cellpadding=0>
		<tr>
			<td valign=top>
				<p>Content</p>
			</td>
		</tr>
	</table>
</div>

</body>
</html>
Würden nicht die Tables eher zum Style gehören als zum Layout? Also irgendwas mach ich falsch. Und wie ist das, wenn man die Seiten dann mit PHP zusammenstöpseln will? Wie macht man das am Besten?
Serow ist offline   Mit Zitat antworten
Alt 19.12.06, 23:26   #4 (permalink)
LX
Moderator
 
Registriert seit: 14.02.06
LX Leistung: Z3
LX eine Nachricht über ICQ schicken LX eine Nachricht über AIM schicken LX eine Nachricht über Yahoo! schicken
Likes: 21
Lightbulb

Örm... die DIVs sind da, damit du keine Tabellen mehr brauchst. Tabellen haben weder beim Style, noch beim Layout was verloren, sondern ausschließlich semantisch bei der Darstellung tabellarischer Daten. Was immer du vom Aussehen her mit Tabellen erreichen kannst, das geht auch mit einem Containerlayout und CSS.

Oh, und never ever die Maßeinheiten im CSS vergessen. Die Breitenangabe für #menu ist sonst reichlich sinnfrei.
__________________
"Ever tried. Ever failed. No matter.
Try again. Fail again. Fail better."
- Samuel Beckett

JS BB LX UP
LX ist offline   Mit Zitat antworten
Alt 19.12.06, 23:51   #5 (permalink)
Moderator
 
Benutzerbild von bitmuncher
 
Registriert seit: 30.09.06
bitmuncher Quadcorebitmuncher Quadcorebitmuncher Quadcorebitmuncher Quadcorebitmuncher Quadcorebitmuncher Quadcore
Likes: 442
Standard

Zuerstmal würde ich die ganzen Style-Sachen (also den CSS-Kram) in eine extra Datei packen, dann für die Inhalte Platzhalter setzen und den Spass via PHP parsen, was dann die Inhalte (z.B. aus einer Datenbank) anstelle der Platzhalter einsetzt. Damit hast du dann wirklich eine Trennung von Inhalt, Layout und Design. Alles andere wäre in meinen Augen sinnlos.
__________________
Mein Blog - Mein Job - Diaspora

Der Ring uns zu knechten besteht aus 12 Sternen auf blauem Grund.

Neue Beiträge im Habo via Twitter - Das HaBo auf FB - Das HaBo bei G+
bitmuncher ist offline   Mit Zitat antworten
Alt 19.12.06, 23:59   #6 (permalink)
Senior Member
Themenstarter
 
Registriert seit: 26.03.06
Serow Leistung: 8086
Likes: 16
Standard

ok danke für die tipps.
Auf das mit dem parsen bin ich nicht bekommen. Sonst hätte ich praktisch Layout ins PHP Skript schreiben müssen, das wäre blöd gewesen.

Ok das mit den Tabellen stimmt schon So macht das ganze div-Zeug keinen Sinn mehr


Hab mal die Tabels rausgenommen und es über die css eigentschaften gemacht:

Code:
<html>
<head>
<style type="text/css">

#topBar {
  margin-left: 150px;
  height: 97px;
  width: 650px; 
  background-color:darkgray;
}

#bottomBar {
  margin-left: 150px;
  height: 53px;
  width: 650px; 
  background-color:gray;
}

#imageBox {
  float: left;
  width: 150px;
  height:150px;
  background-color:lightgray;
  background-image:url(./images/header.png);
}

#menu {
  width: 150px;
  float: left;
  background-color: gray;
}

#content {
  width: 650px;
  height: *;
  margin-left: 150px;
  background-color: lightgray;
}
</style>


</head>
<body>

<div id="imageBox">
</div>
<div id="topBar">
	TOP
</div>
<div id="bottomBar">
	BOTTOM
</div>

<div id="menu">
	<ul>
		<li>Menu 1</li>
		<li>Menu 2</li>
		<li>Menu 3</li>
		<li>Menu 4</li>
		<li>Menu 5</li>
	</ul>
</div>

<div id="content">	
CONTENT<br>CONTENT<br>CONTENT<br>CONTENT<br>CONTENT<br>CONTENT<br>CONTENT<br>CONTENT<br>CONTENT<br>
CONTENT<br>CONTENT<br>CONTENT<br>CONTENT<br>CONTENT<br>CONTENT<br>CONTENT<br>CONTENT<br>CONTENT<br>CONTENT<br>
CONTENT<br>CONTENT<br>CONTENT<br>CONTENT<br>CONTENT<br>CONTENT<br>CONTENT<br>CONTENT<br>CONTENT<br>
CONTENT<br>CONTENT<br>CONTENT<br>CONTENT<br>CONTENT<br>CONTENT<br>CONTENT<br>CONTENT<br>CONTENT<br>
</div>

</body>
</html>
Kann mir jemand sagen, wie ich es schafft, dass die Menu-Div-Box so groß ist wie die Content-Div-Box falls die Content-Div-Box größer ist als die Menu-Box mindestensbraucht, und umgekehrt? (lol der Zatz liest sich geil!)
Serow ist offline   Mit Zitat antworten
Antwort
   
- Anzeige -

Werbung ist gerade online    

[HaBo] » Web, Network & Multimedia Palace » (Web-) Design und webbasierte Sprachen » Fragen zu CSS und PHP: Aufbau einer Seite
Themen-Optionen
Ansicht

Forumregeln
Es ist Ihnen nicht erlaubt, neue Themen zu verfassen.
Es ist Ihnen nicht erlaubt, auf Beiträge zu antworten.
Es ist Ihnen nicht erlaubt, Anhänge hochzuladen.
Es ist Ihnen nicht erlaubt, Ihre Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks sind aus
Pingbacks sind aus
Refbacks sind aus


Ähnliche Themen
Thema Autor Forum Antworten Letzter Beitrag
Der COmputer springt von einer Seite zur anderen. Jon2 Die Problemzone 2 21.08.06 13:26
Keine zutrit zu einer Seite Xalon (In)security allgemein 3 12.09.05 13:44
Hilfe zur Erstellung einer Seite DoppelKeks (Web-) Design und webbasierte Sprachen 13 22.05.05 18:29
Aufbau und Sicherheitsmechanismen einer EC-Karte Zongolo Hardware Probleme 5 04.03.05 12:33
Aus einer Seite gekickt und gesperrt !! Watanyar Internet Allgemein 16 03.01.04 19:42


1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61