Top-Themen

Aktuelle Themen (A bis Z)

Administrator.de FeedbackApache ServerAppleAssemblerAudioAusbildungAuslandBackupBasicBatch & ShellBenchmarksBibliotheken & ToolkitsBlogsCloud-DiensteClusterCMSCPU, RAM, MainboardsCSSC und C++DatenbankenDatenschutzDebianDigitiales FernsehenDNSDrucker und ScannerDSL, VDSLE-BooksE-BusinessE-MailEntwicklungErkennung und -AbwehrExchange ServerFestplatten, SSD, RaidFirewallFlatratesGoogle AndroidGrafikGrafikkarten & MonitoreGroupwareHardwareHosting & HousingHTMLHumor (lol)Hyper-VIconsIDE & EditorenInformationsdiensteInstallationInstant MessagingInternetInternet DomäneniOSISDN & AnaloganschlüsseiTunesJavaJavaScriptKiXtartKVMLAN, WAN, WirelessLinuxLinux DesktopLinux NetzwerkLinux ToolsLinux UserverwaltungLizenzierungMac OS XMicrosoftMicrosoft OfficeMikroTik RouterOSMonitoringMultimediaMultimedia & ZubehörNetzwerkeNetzwerkgrundlagenNetzwerkmanagementNetzwerkprotokolleNotebook & ZubehörNovell NetwareOff TopicOpenOffice, LibreOfficeOutlook & MailPapierkorbPascal und DelphiPeripheriegerätePerlPHPPythonRechtliche FragenRedHat, CentOS, FedoraRouter & RoutingSambaSAN, NAS, DASSchriftartenSchulung & TrainingSEOServerServer-HardwareSicherheitSicherheits-ToolsSicherheitsgrundlagenSolarisSonstige SystemeSoziale NetzwerkeSpeicherkartenStudentenjobs & PraktikumSuche ProjektpartnerSuseSwitche und HubsTipps & TricksTK-Netze & GeräteUbuntuUMTS, EDGE & GPRSUtilitiesVB for ApplicationsVerschlüsselung & ZertifikateVideo & StreamingViren und TrojanerVirtualisierungVisual StudioVmwareVoice over IPWebbrowserWebentwicklungWeiterbildungWindows 7Windows 8Windows 10Windows InstallationWindows MobileWindows NetzwerkWindows ServerWindows SystemdateienWindows ToolsWindows UpdateWindows UserverwaltungWindows VistaWindows XPXenserverXMLZusammenarbeit

gelöst Frameset durch CSS ersetzen, aber wie richtig?

Mitglied: n.o.b.o.d.y

n.o.b.o.d.y (Level 3) - Jetzt verbinden

09.09.2007, aktualisiert 14:36 Uhr, 8193 Aufrufe, 5 Kommentare

Möchte nicht in jeder Webseite das Nav-Menü pflegen müssen

Hallo ihr Wissenden!

wurde freundlich dazu überredet für den Verein in dem meine Frau ist eine kleine Webseite einzurichten. Da das nicht so mein eigentlicher Wirkungsbereich ist, habe ich mich schlau gemacht, wie man Webseiten heutzutage so vernünftig aufsetzt. (soll ja eine pflegeleichte HP werden)

Das erste was mir da über den Weg gelaufen ist, Frames sind böse! OK, dachte ich dann schau dir mal CSS genauer an, gesagt getan. Ist ja alles gut und schön wie toll das alles ohne Frames geht, aber dickes dickes ? ist geblieben:

Wie trenne ich den normalen Content von der Navigation???

Bei allen Beispielen die ich gelesen habe, kopiere ich jedesmal die komplette Startseite und ändere nur den Inhalt der Seite. Ok, und was mach ich wenn ich mal an der Navigationsleiste was ändern will/muss?? Dann ackere ich alle 20 (Unter-)Seiten (die ich habe) durch oder wie??

Oder habe ich in den letzten eineinhalb Tagen was überlesen?

Macht mich bitte schlauer!

Ralf
Mitglied: Masterofdisaster2
09.09.2007 um 09:02 Uhr
Also in php kannst du das mit dem Befehl Include machen.
sieht dann ungefähr so aus <? @include("Navigationsseite.irgendwas"); ?>
dann hättest du noch die Möglichkeit mit iframes zu arbeiten, oder mit java.

hoffe ich konnte dir zumindestens einen Ansatz liefern.
mfg
Bitte warten ..
Mitglied: Dani
09.09.2007 um 09:22 Uhr
Guten Morgen nobody,
das Stichwort lautet "DIV - Container". Damit kannst du eine Art unsichtbare Tabelle erzeugen und nach belieben selber gestalten. Bei Css4You findest du einige Vorlagen bzw. Ideen.

Oder habe ich in den letzten eineinhalb Tagen was überlesen?
Würde ich so nicht sagen...einen Teil auf jeden Fall, "DIV - Container".

Beispiel:

HTML/PHP-Code:
01.
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"> 
02.
<http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd> 
03.
 
04.
<? 
05.
include_once ("include/section.php"); 
06.
?> 
07.
 
08.
<? error_reporting(E_All); ?> 
09.
 
10.
<html> 
11.
<head> 
12.
<!-- # Einbinden der CSS Dateien --> 
13.
<link rel="stylesheet" type="text/css" href="styles/pagestyle.css"> 
14.
</head> 
15.
 
16.
 
17.
<body> 
18.
<!-- #ganz oberer Div-Holder --> 
19.
<div id="root"> 
20.
 
21.
	<!-- #Banner --> 
22.
	<div id="banner"> 
23.
	<? include ("top.php"); ?> 
24.
	</div> 
25.
 
26.
	<!-- #Container - linke Seite, Mitte, rechte Seite --> 
27.
	<div id="container"> 
28.
 
29.
		<!-- #Linke Seite --> 
30.
		<div id="links" class="spalte"> 
31.
		MENÜ <!-- <? include ("menu.php"); ?> --> 
32.
		</div> 
33.
 
34.
		<!-- #Mitte - Inhalt --> 
35.
		<div id="mitte" class="spalte"> 
36.
		CONTENT <!-- <? include ("inhalt.php"); ?> --> 
37.
		</div> 
38.
 
39.
		<!-- #Rechte Seite --> 
40.
		<div id="rechts" class="spalte"> 
41.
		<? include ("ads.php"); ?> 
42.
		</div> 
43.
 
44.
	<!-- #ENDE - Container --> 
45.
	</div> 
46.
	 
47.
	<!-- #Footer --> 
48.
	<div id="footer"> 
49.
	FOOTER <!-- <? include ("footer.php"); ?> --> 
50.
	</div> 
51.
 
52.
<!-- #css-float beenden  --> 
53.
<br style="clear:both;">  
54.
</div> 
55.
	 
56.
</body> 
57.
</html>
Die CSS-Datei sieht dazu so aus (pagestyle.css):
01.
 
02.
03.
04.
	margin: 			0px 0px 0px 0px; 
05.
	padding: 			0px 0px 0px 0px; 
06.
07.
 
08.
body 
09.
10.
	font-family:		Arial,Verdana,Helvetica; 
11.
	font-size:			12px; 
12.
	background-color: 		#HF5F4F3; 
13.
14.
/*Beinhaltet nur das DIV-Gerüst der index.php Seite*/ 
15.
 
16.
 
17.
#root  
18.
19.
	width: 			1000px; 
20.
	margin: 			auto; 
21.
	background-color: 		#gggggg; 
22.
23.
 
24.
#banner 
25.
26.
	width: 				1000px; 
27.
	height: 			 	100px; 
28.
	background-image: 		 	url(../images/banner-1000.jpg); 
29.
	background-repeat: 	 	no-repeat; 
30.
31.
 
32.
#container 
33.
34.
	width:		 		1000px; 
35.
	height:		 		auto; 
36.
	min-height:	 		600px; 
37.
	overflow: 		 		hidden; 
38.
39.
 
40.
#container .spalte  
41.
42.
	padding-bottom: 		 	1001em;     /* X + padding-bottom */ 
43.
	margin-bottom: 		 	-1000em;     /* X */ 
44.
45.
 
46.
#links 
47.
48.
	width: 			 	140px; 
49.
	background-color: 		 	#8BD78B; 
50.
	float: 			 	left; 
51.
52.
#mitte 
53.
54.
	width: 			 	720px; 
55.
	background-color: 		 	#FAF0E6; 
56.
  	float:				left; 
57.
58.
 
59.
#rechts 
60.
61.
 	width: 				140px; 
62.
	background-color: 		 	#8BD78B; 
63.
 	float: 				left; 
64.
65.
#footer  
66.
67.
	width: 			 	1000px; 
68.
	height: 			 	60px; 
69.
	background-color: 		 	#73C873; 
70.
	margin-bottom: 		 	none; 
71.
	clear: 			 	both; 
72.
73.
 
In diesem Beispiel hast du oben über die ganze Breite einen Container. Darunter dann 3 Spalten (Navi, Inhalt und rechts auch noch mal einen Spalte). Darunter befindet sich dann wieder eine Zeile über die ganze Seite (Footer).

Jetzt hätten wir mal das Grundgerüst...mit PHP hast du die Möglichkeit Module zu bilden. Jede Seite, die als Link (z.B. Startseite, Impressum, News, etc...) eingebunden werden soll, würde ich in den Ordner "module" speichern.
Jedes Modul muss dann noch registiert werden. Oben im Code gibt es am Anfang eine "include" Zeile. In dieser Datei "section.php" im Verzeichnis "include" gibt es ein Array, dass so aussieht:
01.
<?php 
02.
/*Ein leeres Feld erstellt*/ 
03.
$dateien = array(); 
04.
 
05.
$dateien['startseite'] 			=	"module/startseite.php"; 
06.
$dateien['news'] 				=	"module/aktuelles.php"; 
07.
...
Der Vorteil ist der, der Arrayname kann frei gewählt werden und ist somit unabhänig vom Modulnamen. (siehe "news"). Somit kann man als Besucher nicht nachvollziehen, woher die Seite inculdiert wird.

Zuletzt brauchst du noch die Datei "inhalt.php". Dort wird überprüft, ob das aufgerufene Modul existiert. Falls die Datei im Array (siehe oben) gefunden wird, wird diese Seite eingebunden. In anderen Fall kannst du direkt auf die Startseite verweisen oder einfach eine Fehlerseite ausgeben:
01.
if((isset($_GET['mod'])) AND (isset($dateien[$_GET['mod']]))) 
02.
03.
		include $dateien[$_GET['mod']]; 
04.
05.
	else  
06.
07.
		include $dateien['startseite']; 
08.
		}
Die Links sehen dann so aus:
01.
<a href='index.php?mod=startseite'>Startseite</a>
So, ich hoffe ich habe nichts vergessen und du blickst einigermaßen durch. Ist vllt. ein bisschen viel Info auf einmal...

@master of disaster
dann hättest du noch die Möglichkeit mit iframes zu arbeiten, oder mit java.
Klingt fast nach einer Ver.....!! Dann kann er gleich bei Frames bleiben und muss nicht pfuschen... Hast du schon mal mit Java eine Seite erstellt?? Schon aus dem Grund, dass jeder i - Punkt als Object programmiert werden muss, würde mir die Lust verderben (wir reden hier von einer Hobbyseite, nicht Firmenseite).


Grüße
Dani
Bitte warten ..
Mitglied: n.o.b.o.d.y
09.09.2007 um 09:55 Uhr
Moin, moin!

Ok, vielen Dank erstmal!!

Ich weiß jetzt, dass ich also mein PHP-Grundwissen wieder auspacken muß um das hinzubekommen, denn ich wollte das schon von Anfang an gleich richtig machen.
Das es draußen regnet und es nicht so aussieht, als wenn das heute noch anders wird, werde ich mich damit mal den lieben langen Sonntag beschäftigen.

Grüße aus dem nassen Norden der Republik!

Ralf
Bitte warten ..
Mitglied: n.o.b.o.d.y
09.09.2007 um 12:02 Uhr
Hallo,

was mir so eben so einfällt:

Kann ich nicht einfach den Navigationsmenüteil der Webseite in eine PHP-Seite (als html+css!) packen, mit include einbinden und fertig?
Quasi nur den Umweg über PHP zum einbinden nehmen, um mit der PHP-Seite einfach HTML drazustellen.

Ok, hört sich ein bisschen krank an, aber könnte das gehen?


<edit:14:22 Uhr>

@Dani

Nach einem Ausflug zu Joomla hab ich mir mal Deine Strickmustervorlage zusammengebaut. Das kann ich doch sehr gut als Grundgerüst verwenden! (werd ich auch tun! )

Danke!

Ralf
Bitte warten ..
Mitglied: Dani
09.09.2007 um 14:36 Uhr
Hi,
Kann ich nicht einfach den Navigationsmenüteil der Webseite in eine PHP-Seite (als
html+css!) packen, mit include einbinden und fertig?
Na klaro....habe ich doch auch gemacht (siehe 1. Code-Beispiel). Einfach ausgelagert....


Grüße
Dani
Bitte warten ..
Ähnliche Inhalte
HTML

CSS 3 - "viewport" Kein gültiges CSS?

gelöst Frage von ukodusHTML2 Kommentare

Hey Leute, gerade hab ich den Code (@viewport { }) durch den CSS-Überprüfer ) durchgejagt und er entgegnete: "Einlese-Fehler ...

Batch & Shell

Teil einer Zeile in einer .css Datei suchen und mit hilfe einer Batch ersetzen

Frage von Philipp1992Batch & Shell5 Kommentare

Hallo zusammen, Ich bin neu hier. Ich stöbere schon seit längeren durch euer Forum und bis jetzt haben mir ...

CSS

CSS Problem

gelöst Frage von michi1983CSS2 Kommentare

Hallo Admins, eventuell kann mir ja hier einer weiterhelfen, ich stehe offenbar auf der Leitung. Auf folgender Website (die ...

CSS

Hilfe bei CSS

gelöst Frage von emeriksCSS8 Kommentare

Hi, vorne weg: Bin in HTML und CSS nicht so die Leuchte. Ich will bloß ein paar Reports erstellen ...

Neue Wissensbeiträge
Drucker und Scanner
HP-MF-Drucker per Fax angreifbsr
Information von Lochkartenstanzer vor 23 StundenDrucker und Scanner2 Kommentare

Endlich eine sinnvolle Verwendung für Faxe: Damit kann man offensichtlich den Drucker übernehmen. lks

Router & Routing

Das pfSense Buch ist jetzt für jeden kostenlos zu beziehen

Tipp von magicteddy vor 1 TagRouter & Routing2 Kommentare

Bisher war das Buch nur für zahlende Unterstützer verfügbar, jetzt steht für Jedermann kostenlos zur Verfügung. Siehe auch The ...

Firewall

Möglicherweise neue Sicherheitslücke in Mikrotik-Firmware

Information von LordGurke vor 3 TagenFirewall3 Kommentare

Hallo zusammen, vor ein paar Monaten gab es ja bereits eine Sicherheitslücke in der Firmware von Mikrotik-Routern, über welche ...

Erkennung und -Abwehr
Rechner hacken mit Cortana, auch Remote
Information von Lochkartenstanzer vor 4 TagenErkennung und -Abwehr3 Kommentare

heise berichtet über den Vortrag von der Blackhat Open Sesame: Picking Locks with Cortana. Einige Fehler sind schon gefixt, ...

Heiß diskutierte Inhalte
Windows Netzwerk
Performance bei Terminalserver
Frage von azizalexanderWindows Netzwerk20 Kommentare

Hallo zusammen, Ich wusste nicht in welches Thema meine Frage passt ich Bitte um Vergebung falls ich hier falsch ...

CPU, RAM, Mainboards
Xeon E5620: noch schnell genug?
Frage von ahussainCPU, RAM, Mainboards18 Kommentare

Hallo allerseits, ich habe die Möglichkeit, aus Restbeständen einen Tower mit Xeon E5620 CPU und 24 GB RAM zu ...

Exchange Server
Exchange 2013 - Unable to Relay nach extern, SuperMailer
Frage von leon123Exchange Server16 Kommentare

Hallo zusammen, ich brauch mal wieder eure Hilfe. Ich beschäftige mich gerade mit dem SuperMailer und erhalte vom Exchange ...

Windows Server
Remote Desktop Services User Profile Disk - DFS
Frage von einzelkindWindows Server16 Kommentare

Hallo Miteinander, ich richte gerade eine neue RDS Farm auf Basis von Windows Server 2016 ein. Von Server 2012 ...