• Jetzt anmelden. Es dauert nur 2 Minuten und ist kostenlos!

Tabelle bzw. Text innerhalb eines DIV-Bereiches positionieren

Status
Für weitere Antworten geschlossen.

Corraggiouno

Mitglied
Hallo,

habe etwas Probleme innerhalb eines div-bereichs den Text bzw. eine Tabelle zu positionieren.
Mein CSS-Code:
Code:
body
 {
  font-family: 'Tahoma';
  font-size:10pt;
  background-color:#dcdcdc;
}
#ebene1
{
position: absolute;
top:50px;
left:500px;
bottom:100px;
right:500px;
background-color: #fffafa;
}

mein html-code der Tabelle
Code:
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<title>bsp</title>
<link rel="stylesheet" type="text/css" href="css/nhgz.css">
</head>

 <body>
  <table align="center">
  <tr><a href="start.php">Startseite</a>&nbsp;|&nbsp;</tr>
  <tr><a href="seite2.php">seite2</a>&nbsp;|&nbsp;</tr>
  <tr><a href="seite3.php">seite3</a>&nbsp;|&nbsp;</tr>
  <tr><a href="seite4.php">seite4</a>&nbsp;|&nbsp;</tr>
  </table>
  
  </body>
</html>

Code:
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<title>bsp</title>
<link rel="stylesheet" type="text/css" href="css/nhgz.css">
</head>


  <body>
   <div id="ebene1">
   <img src="http://www.html.de/images/logo.jpg">
   <?php
   include ("menue.php");
   ?>
   </div>
Wenn ich nun die Tabelle nach dem Logo einlesen möchte wird die Tabelle direkt hinter das Logo geklatscht. Kann mir jemand sagen wie ich die Tabelle mittig nach dem Logo positioniere?
 
Was sind das für HTML-Codes? Ist der erstere nur deine Vorlage und du willst das jetzt überarbeiten? Falls der erstere der Code ist der in der menu.php steht dann ist es der falsche: der darf keinen doctype, keinen head und kein body-tag enthalten.

Und was die Zentrierung angeht: gib der Tabelle eine feste Breite und "margin: 0px auto;".
 
die menue.php enthält ja den Tabellen-Code, welchen ich auch unter anderem in die Startseite einlese.
Warum darf die menue.php kein head bzw. body - tag enthalten? Wie soll ich dann die Tabelle definieren ohne body-tag?
 
Das include kopiert genau den Text, der in der Datei ist in den Quelltext. Schau dir mal den Quelltext deiner Seite an, wenn du sie im Browser aufrufst, dann wirst du sehen, dass du jetzt 2x <html><body> usw hast. das ist nicht erlaubt. Du kannst die Tabelle einfach so in deinen Quelltext includen. Es ist keine eigenständige Seite, sondern nur ein Codeteil
 
Dann hast Du den Sinn von der php-Funktion include() nicht verstanden. Das ist nicht mit einem iframe vergleichbar. Die Funktion bindet 1:1 das ein was in der einzubindenden Datei steht. Wenn dort nochmal ein doctype und head vorkommt steht in der letztlich im Browser angezeigten Seite nochmal ein doctype und head. Um bei deinem Quellcode zu bleiben - das sieht dann so aus:

Code:
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<title>bsp</title>
<link rel="stylesheet" type="text/css" href="css/nhgz.css">
</head>
  <body>
   <div id="ebene1">
   <img src="http://www.html.de/images/logo.jpg">
   <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<title>bsp</title>
<link rel="stylesheet" type="text/css" href="css/nhgz.css">
</head>

 <body>
  <table align="center">
  <tr><a href="start.php">Startseite</a>&nbsp;|&nbsp;</tr>
  <tr><a href="seite2.php">seite2</a>&nbsp;|&nbsp;</tr>
  <tr><a href="seite3.php">seite3</a>&nbsp;|&nbsp;</tr>
  <tr><a href="seite4.php">seite4</a>&nbsp;|&nbsp;</tr>
  </table>
  
  </body>
</html>
 </div>
 </body>
</html>
Merkst Du was? Völlig nicht valider Code entsteht wodurch jeder Browser Darstellungsprobleme hat.
 
kannst du mir sagen, wie man es richtig macht? Bzw. ein Vorschlag unterbreiten?
also wenn ich das ohne Div-Bereich mache und mit reinem html ohne css dann funktioniert mein Vorhaben mit dem Einlesen der menue.php
 
Zuletzt bearbeitet:
soll dann meine menue.php nur folgenden Inhalt haben:
Code:
<table align="center">
  <tr><a href="start.php">Startseite</a>&nbsp;|&nbsp;</tr>
  <tr><a href="seite2.php">seite2</a>&nbsp;|&nbsp;</tr>
  <tr><a href="seite3.php">seite3</a>&nbsp;|&nbsp;</tr>
  <tr><a href="seite4.php">seite4</a>&nbsp;|&nbsp;</tr>
  </table>
 
Besser wäre dieser hier,

Code:
<ul>
  <li><a href="">...</a></li>
  <li><a href="">...</a></li>
  <li><a href="">...</a></li>
  ...
</ul>
denn Listen und Menüs zeichnet man korrekt als Liste aus und nicht als tabellarische Daten.
 
soll ich dann für die Liste einen eigenen div-bereich definieren?
Gegenfrage: Packst Du Geschenke auch immer zweimal in Geschenkpapier?

Oder anders gesagt: Eigenschaften, die Du für <div> setzen kannst, funktionieren genauso in allen anderen BLock-Elementen.
Oder aus Sicht von HTML: <div> dient lediglich zum Gruppieren mehrerer Elemente.
 
Status
Für weitere Antworten geschlossen.
Zurück
Oben