webForumDet fria alternativet

Display:none; Funkar inte alltid.

4 svar · 228 visningar · startad av cyprys

cyprysMedlem sedan dec. 20003 563 inlägg
#1

Varför funkar det inte att göra såhär.
Och hur kan man lösa det? Finns det något liknande sätt?

<div ID=namnet style="display:none;">
<tr>
<td>
Texten som inte ska visas men gör det ändå.
Jag vill inte att <tr> och <td> ska visas heller så att de tar upp plats.
</td>
</tr>
</div>

MatteMedlem sedan aug. 20002 975 inlägg
#2

Jag saknar några table-taggar här.

Om det är som jag misstänker så försöker du på något sätt att välja att inte visa en rad i din tabell. Tror inte det är tillåtet att lägga div-tagg innanför <table> men utanför <td>. Däremot borde det gå bra att göra så här:

<tr style="display:none;">

Sen i texten du skriver så har du med "<tr>" och "<td>". Dom funkar ju här som html-element, och din tabell blir knas. Du skulle kunna göra så här:

<table> 
<tr><td>Visa denna rad</td></tr>

<tr style="display:none;">
<td> 
Texten som inte ska visas men gör det ändå. 
Jag vill inte att &lt;tr&gt; och &lt;td&gt; ska visas heller så att de tar upp plats. 
</td> 
</tr> 

<tr><td>Visa denna rad</td></tr>
</table>
cyprysMedlem sedan dec. 20003 563 inlägg
#3

Jo det stämmer bra men tyvärr ar det ytterligare i sådana fall.

Jag vill nämligen kunna ta fram dessa igen med ett script.
Jag sätter ett ID på dem i grupper. Går det?

<tr ID=del1>
<tr ID=del1>
<tr ID=del1>

Och sen vill jag ta fram alla med del1.style.display = ''
Men det går inte då det finns flera stycken? Eller går det på något sätt?

JojoxxMedlem sedan juni 20004 308 inlägg
#4

Ett id måste vara unikt, annars är det inte ett id :) Men du kan lägga dem i klasser som du gömmer/visar med lite script;

<script language="JavaScript" type="text/javascript">
function getStyleClassByName(className){
	if(document.all){
		for(var styleSheet=0;styleSheet<document.styleSheets.length;styleSheet++){
			for(var rule=0;rule<document.styleSheets[styleSheet].rules.length;rule++){
				if(document.styleSheets[styleSheet].rules[rule].selectorText=="."+className){ return document.styleSheets[styleSheet].rules[rule]; }
			}
		}
	} else if(document.getElementById){
		for(var styleSheet=0;styleSheet<document.styleSheets.length;styleSheet++){
			for(var rule=0;rule<document.styleSheets[styleSheet].cssRules.length;rule++){
				if(document.styleSheets[styleSheet].cssRules[rule].selectorText=="."+className){ return document.styleSheets[styleSheet].cssRules[rule]; }
			}
		}
	}
	return null;
}
</script>

<style type="text/css">
.foo { display:none; }
</style>

<table border="1">
<tr class="foo"><td>En rad som går att gömma.</td></tr>
<tr><td>En vanlig rad.</td></tr>
<tr class="foo"><td>En rad som går att gömma.</td></tr>
</table>

<a href="#" onClick="getStyleClassByName('foo').style.display='inline';">Visa</a>
<a href="#" onClick="getStyleClassByName('foo').style.display='none';">Göm</a>

Dags att flytta tråden kanske.

cyprysMedlem sedan dec. 20003 563 inlägg
#5

Det var precis vad jag var ute efter.
Man tackar.. :)

133 ms totalt · 3 externa anrop · v20260731065814-full.30151723
0 ms — hämta forumlista (cache)
0 ms — hämta statistik (cache)
130 ms — hämta tråd, inlägg och bilagor (db)