zurück zur Startseite
  


Zurück XHTMLforum > (X)HTML und CSS > CSS
Seite neu laden DIV-Container per Klasse ausblenden?

Antwort
 
LinkBack Themen-Optionen Ansicht
  #1 (permalink)  
Alt 28.07.2015, 21:04
Neuer Benutzer
neuer user
Thread-Ersteller
 
Registriert seit: 28.07.2015
Beiträge: 10
imebro befindet sich auf einem aufstrebenden Ast
Standard DIV-Container per Klasse ausblenden?

Hallo,

ich würde gerne einen DIV-Container über eine Klasse ausblenden, wenn eine bestimmte Seite aufgerufen wird.

Im Moment habe ich es so versucht:

Code:
#container_mitte.disclaimer {display: none;}
Dann habe ich die Klasse "disclaimer" im HTML-Text eingetragen, so wie ich es mit anderen Klassen auch mache.

Leider funktioniert es nicht.

Könnt Ihr mir helfen?

Danke und Gruss,
imebro
Mit Zitat antworten
Sponsored Links
  #2 (permalink)  
Alt 28.07.2015, 21:51
Benutzer
neuer user
 
Registriert seit: 06.07.2015
Beiträge: 34
HappyPOny befindet sich auf einem aufstrebenden Ast
Standard Leerzeichen fehlt

Hallo,

zwischen #container_mitte und .disclaimer fehlt ein Leerzeichen. So ist korrekt:
Code:
<div id="container_mitte" class="disclaimer">
Inhalte
</div>
Eine von diesen drei Formatierungen
HTML-Code:
#container_mitte {
 display: none;
 }
 .disclaimer {
 display: none;
 }

 div.disclaimer {
 display: none;
 }
reicht, um div unsichtbar zu machen.
Mit Zitat antworten
Sponsored Links
  #3 (permalink)  
Alt 28.07.2015, 22:08
Neuer Benutzer
neuer user
Thread-Ersteller
 
Registriert seit: 28.07.2015
Beiträge: 10
imebro befindet sich auf einem aufstrebenden Ast
Standard

Ok, danke...

Ich habe mich vielleicht falsch ausgedrückt.

In der index.php Datei muss der Container ganz normal auftauchen.
Dort steht er mit

Code:
<div id="container_mitte">
Wenn ich jetzt über den Link "Disclaimer" den Disclaimer aufrufe, der sich auf einer extra Seite befindet, dann soll dort der DIV-Container "container_mitte" nicht auftauchen. In allen anderen Seiten soll er weiterhin auftauchen.

Daher hatte ich gedacht, dass ich einfach eine Klasse erstelle, mit der ich diesen Container ausblenden kann, indem ich im Quelltext der Seite dann folgendes eintrage:

Code:
<a class="disclaimer" href="............
In der CSS-Datei steht dann nur der Code:

Code:
#container_mitte.disclaimer {display: none;}
Funktioniert aber leider so nicht.

LG
imebro
Mit Zitat antworten
  #4 (permalink)  
Alt 28.07.2015, 22:34
Benutzer
neuer user
 
Registriert seit: 06.07.2015
Beiträge: 34
HappyPOny befindet sich auf einem aufstrebenden Ast
Standard

Zitat:
Zitat von imebro Beitrag anzeigen
Funktioniert aber leider so nicht.
habe deinen Lösungsansatz nicht wirklich verstanden. Die Klasse disclaimer, die den Bereich
Code:
<div id="container_mitte">
ausblenddn muss, einem Link
HTML-Code:
<a class="disclaimer" href="............
zuweisen, kann nicht funktionieren. Du kannst bspw. im
Code:
href="index.php?seite=disclaimer"
mit seite=disclaimer dem index.php mitteilen, das es disclaimer ist und als Reaktion darauf mit PHP class="disclaimer" einfügen
Code:
<div id="container_mitte" class="disclaimer">
Mit Zitat antworten
  #5 (permalink)  
Alt 28.07.2015, 23:27
Neuer Benutzer
neuer user
Thread-Ersteller
 
Registriert seit: 28.07.2015
Beiträge: 10
imebro befindet sich auf einem aufstrebenden Ast
Standard

Schade... leider funktioniert das zwar... aber auf ALLEN Seiten.

Habe jetzt einfach nur in der "index.php" die Änderung durchgeführt:

Code:
<div id="container_mitte" class="disclaimer">
Also die Klasse einfach ins DIV eingefügt.

Im Quelltext hatte ich ja bereits die Klasse eingefügt und jetzt funktioniert es.
Allerdings wird der "container_mitte" jetzt auf ALLEN Seiten ausgeblendet und nicht nur auf der Disclaimer-Seite.

Verstehe das zwar überhaupt nicht, da ich ja nur im Quellcode der Disclaimer-Seite die Klasse eingefügt habe. Seltsam

Vielen Dank jedoch und schöne Grüße,
imebro
Mit Zitat antworten
  #6 (permalink)  
Alt 29.07.2015, 08:17
Erfahrener Benutzer
XHTMLforum-Kenner
 
Registriert seit: 10.01.2010
Beiträge: 1.101
MrMurphy ist ein sehr geschätzer MenschMrMurphy ist ein sehr geschätzer MenschMrMurphy ist ein sehr geschätzer Mensch
Standard

Hallo,

und wir können nicht verstehen, da du uns keine vernünftigen Infos gibst, sprich einen sinnvollen Quellcode.

Du schmeißt uns leider nur mit aus dem Zusammenhang gerissenen Quellcodeschnipseln tod. Das ist unhöflich und nicht zielführend, da wir dir nicht konkret helfen können.

Bei deinem Problem ist entscheidend wie die Container verschachtelt sind bzw. wie die id und class vergeben sind.

Die grundsätzliche Voraussetzung ist, das sich die id und / oder class im HTML-Quelltext der Seite mit dem Disclaimer von allen anderen Seiten unterscheiden. Trifft das überhaupt zu? Und wenn ja: Wie unterscheiden die sich?

Gruss

MrMurphy
Mit Zitat antworten
  #7 (permalink)  
Alt 29.07.2015, 09:07
Neuer Benutzer
neuer user
Thread-Ersteller
 
Registriert seit: 28.07.2015
Beiträge: 10
imebro befindet sich auf einem aufstrebenden Ast
Standard

OK und danke für den Hinweis.

Ich möchte natürlich nicht unhöflich sein... dachte aber, dass ich Euch mit dem kompletten Quellcode irritieren würde

Grundsätzlich wäre zu sagen, dass es sich um ein CMS handelt mit dem Namen "Websitebaker". Über das Backend legt man die einzelnen Unterseiten des Webs an. Ich habe nun eine neue Seite angelegt mit dem Namen "Disclaimer", die den Haftungsausschluss beinhaltet. Diese Seite wird über einen Link im footer aufgerufen.

Die Seite "Disclaimer" soll in einem Popup-Fenster geöffnet werden. Sie soll daher lediglich das Logo, aber nicht das Menü und auch nicht die große Grafik enthalten, die auf den Seiten direkt unter dem Header (mit Menü + Logo) erscheint.

Dazu habe ich im Backend der Seite "footer"... im Quellcode des Links, der die Seite "Disclaimer" aufruft, die Klasse "disclaimer" eingetragen. Ich habe das im folgenden Code rot dargestellt.

Hier mal der komplette Quellcode der Seite "footer":

Code:
<table cellpadding="1" cellspacing="1" height="90" style="width: 1280px;" width="941">
<tbody>
	<tr>
		<td><span style="font-size:18px;">&copy;&nbsp; Webseitenname&nbsp; |&nbsp; 
		
		<a href="[wblink5]">Impressum</a></span>&nbsp; <span style="font-size:18px;">|&nbsp; 

		<a class="disclaimer" href="[wblink10]" onclick="window.open(this.href,
 '',
 'resizable=yes,status=no,location=no,toolbar=no,menubar=no,fullscreen=no,scrollbars=yes,dependent=no,width=1025,left=300,height=800,top=50'); return false;">Disclaimer</a> </span></td>

		<td><span style="font-size:18px;">
		<img alt="" src="http://127.0.0.1:4001/media/logo.jpg" style="width: 80px; height: 72px; float: right; margin-left: 20px; margin-right: 20px; margin-top: 10px;" /></span></td>
	</tr>
</tbody>
</table>
In der Template-Datei "index.php" habe ich dann die Klasse im DIV-Container Mitte eingetragen, da dieser ja ausgeblendet werden soll. Den entspr. Bereich habe ich auch hier wieder rot markiert.

Hier der komplette HTML-Code der "index.php":
Code:
<!-- BEGINN - EINSATZ DER WECHSELNDEN HEADERGRAFIKEN -->
	<?php 
	  $headerbild_id="1";
	  
	if (PARENT==0) {
	  if (file_exists(WB_PATH.'/media/headerbilder/background_'.PAGE_ID.'.jpg')) {
	  $headerbild_id=PAGE_ID;
	  }
	} else {
	  if (file_exists(WB_PATH.'/media/headerbilder/background_'.PARENT.'.jpg')) {
	  $headerbild_id=PARENT;
	  }
	  if (file_exists(WB_PATH.'/media/headerbilder/background_'.PAGE_ID.'.jpg')) {
		 $headerbild_id=PAGE_ID;
	  }
	}   

	 ?>
	<style type="text/css">
	#headergrafik {
		background-image:url(<?php echo WB_URL.'/media/headerbilder/background_'.$headerbild_id.'.jpg'; ?>);
		<!-- background-size: contain;  <!-- od. 100% - hierdurch werden die Headergrafiken autom. skaliert -->
	}
	</style>
	<!-- ENDE - EINSATZ DER WECHSELNDEN HEADERGRAFIKEN -->
	
</head>

<body>

<div id="body">  <!-- Standardvorgaben für body-Bereich (z.B. Schriftart u. -Größe) -->

<div id="wrapper">  <!-- umschließt alles außer dem Menü, damit das Menü oben fix stehen bleibt! -->


	 <div id="container_mitte" class="disclaimer">
		<div id="container_header">
		  <div id="headergrafik"></div>
		</div>
	 </div> 

	 
	 
	 <div id="container_inhalt">
  	       <div id="inhalt">
		        <?php page_content(1); ?>
		   </div>
	  </div>	 

	  
	  
	 <div id="container_unten">
	   <!-- <div id="social">Social</div> Block re. unten wird nicht genutzt!! -->
	     <div id="footer">
	     <?php page_footer(2); ?>  <!-- Sidebar-Block für individuellen Inhalt je Seite -->
  		  [[SectionPicker?sid=3]]   <!-- Section-ID aus Backend, die für alle Seiten gelten soll --> 
	     </div>
	 </div>	  
	  
	  <!-- <div id="clear_both"></div> -->
	  

</div>  <!-- Ende DIV Wrapper -->

	<div id="container_oben">
		  <div id="container_oben_innen">
				
					<div id="logo">
					<a href="<?php echo WB_URL;?>"><img src="<?php echo WB_URL;?>/media/logo456.png" title="Zur Startseite von www.ingo-meurer.de" alt="natuerliches webdesign - Ingo Meurer" /></a>
					</div>  <!-- Ende DIV logo -->
					
					 <div id="menu">
			        <?php
					show_menu2(0,SM2_ROOT+1,SM2_CURR+1,SM2_TRIM,'<li><span class="menu-default">[ac][menu_title]</a></span>','</li>','<ul>','</ul>');
					// CODE FOR WEBSITE BAKER FRONTEND LOGIN
					if (FRONTEND_LOGIN == 'enabled' && VISIBILITY != 'private' && $wb->get_session('USER_ID') == '') {
					$redirect_url = ((isset($_SESSION['HTTP_REFERER']) && $_SESSION['HTTP_REFERER'] != '') ? $_SESSION['HTTP_REFERER'] : WB_URL );
					$redirect_url = (isset($thisApp->redirect_url) ? $thisApp->redirect_url : $redirect_url );
					} ?>
					</div>  <!-- Ende DIV menu -->
					 
				
		  </div>  <!-- Ende DIV oben innen -->
	</div>  <!-- Ende DIV oben -->

	
	
</div> <!-- Ende DIV "body" -->
</body>
Im Anhang seht Ihr einen Screenshot mit dem kompletten Seitenaufbau sowie den genauen Bezeichnungen der einzelnen DIV-Container... bzw. wo genau sich welcher DIV-Container befindet.

So wie es jetzt im Quellcode bzw. in der "index.php" eingetragen ist, wird die Headergrafik (die große Grafik, die Ihr auf dem Screenshot seht) auf ALLEN Seiten ausgeblendet. Sie soll ja NUR ausgeblendet werden, wenn ich die Seite "Disclaimer" über den Link im footer aufrufe.

Würde mich freuen, wenn Ihr mir helfen könnt.

Vielen Dank & schöne Grüße,
imebro
Angehängte Grafiken
Dateityp: jpg webseite.jpg (217,0 KB, 4x aufgerufen)
Mit Zitat antworten
  #8 (permalink)  
Alt 29.07.2015, 10:20
Benutzer
neuer user
 
Registriert seit: 06.07.2015
Beiträge: 34
HappyPOny befindet sich auf einem aufstrebenden Ast
Standard Grundlagen sind wichtig

Ich möchte nicht unhöflich sein, aber wenn du jetzt ungeachtet meines Hinweis von gestern 21:34 class="disclaimer" hier verwendest
Zitat:
Zitat von imebro Beitrag anzeigen
<a class="disclaimer" href=
ist für mich ein Zeichen dafür, dass dir wichtige Grundlagen fehlen, wie CSS funktioniert, um deine Aufgabe zu bewältigen. Mit class="disclaimer" blendest du den Link <a > aus.
Mit Zitat antworten
  #9 (permalink)  
Alt 29.07.2015, 10:33
Neuer Benutzer
neuer user
Thread-Ersteller
 
Registriert seit: 28.07.2015
Beiträge: 10
imebro befindet sich auf einem aufstrebenden Ast
Standard

Hallo und danke für die Antwort.

Sorry... ich habe das nur wieder im Code eingesetzt, damit Ihr seht, was ich bisher versucht hatte.

Ich hatte schon verstanden, dass es so nicht funktioniert

Wie würde es denn funktionieren? Hast Du einen Tipp für mich?

Danke und Gruss,
imebro
Mit Zitat antworten
Sponsored Links
  #10 (permalink)  
Alt 29.07.2015, 10:48
Erfahrener Benutzer
XHTMLforum-Kenner
 
Registriert seit: 10.01.2010
Beiträge: 1.101
MrMurphy ist ein sehr geschätzer MenschMrMurphy ist ein sehr geschätzer MenschMrMurphy ist ein sehr geschätzer Mensch
Standard

Hallo

Zitat:
Wie würde es denn funktionieren?
Das habe ich bereits geschrieben:

Zitat:
Die grundsätzliche Voraussetzung ist, das sich die id und / oder class im HTML-Quelltext der Seite mit dem Disclaimer von allen anderen Seiten unterscheiden.
Wenn alle Seiten die gleichen id und class haben können sie nicht separat gestaltet werden.

Du musst also zunächst einen Weg finden der Seite mit dem Disclaimer eine spezielle id oder class zu geben, zum Beispiel

Code:
<body id="disclaimer">
Alle anderen Seiten dürfen dann entweder keine id für den body haben oder die body-Elemente der anderen Seiten müssen andere id bekommen. Nur so kannst du per CSS die Disclaimer-Seite anders formatieren, also auch Container / Elemente ausblenden.

Ob und wie weit das mit dem Websitebaker möglich ist weiß ich nicht, das musst du ergründen.

Alternativ könntest du versuchen die CSS-Anweisungen im head-Bereich der Disclaimer-Seite (und nur der Disclaimer-Seite) unterzubringen. Aber das hängt auch davon ab ob der Websitebaker das zuläßt.

Nachtrag:

Ich habe grade noch etwas gegoogelt und folgende Seite gefunden, bei der es wohl um genau so ein Problem geht:

http://forum.websitebaker.org/index.php?topic=14212.0

Demnach müsstest du wohl in deine Vorlage (index.php ?) das body-Tag so umschreiben

Code:
<body id="p<?php echo $page_id; ?>">
Wenn das funktioniert sollte eigentlich jede Seite eine eindeutige body-id bekommen, die mit einem Buchstaben (wichtig) beginnt. Du musst dir also ein paar deiner Seiten aufrufen und im Quelltext schauen ob jede Seite eine andere id für den body hat. Dann kannst du mit der id des Disclaimers spezielle Einstellungen im CSS vergeben.

Gruss

MrMurphy

Geändert von MrMurphy (29.07.2015 um 11:03 Uhr)
Mit Zitat antworten
Sponsored Links
Antwort

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 are an
Pingbacks are an
Refbacks are aus


Ähnliche Themen
Thema Autor Forum Antworten Letzter Beitrag
CSS - CMS - lange Menus Balken/BG oben? shinobi CSS 3 13.10.2011 22:12
DIV Höhe 100% Daniel86 CSS 12 29.07.2011 13:40
DIV in anderem Container unten Ausrichten scripper CSS 2 30.06.2009 21:36
onClick Div ein und ausblenden, Tabellen nach unten verschieben wurstkuchen CSS 12 18.09.2007 19:21
div container verschachteln blau CSS 2 05.12.2006 20:44


Alle Zeitangaben in WEZ +2. Es ist jetzt 14:34 Uhr.