Mam stronę html z podstawowym elementem sterującym tabulatorem. Używam javascript do pokazywania i ukrywania kart i elementów div karty. Moim problemem jest to, że jeśli zmienię widoczność elementu wewnątrz jednego z elementów div zakładki na "ukryty", a następnie z powrotem na "widoczny", element wydaje się zapomnieć lub stracić swój macierzysty pojemnik div i pozostaje widoczny, niezależnie od jego oryginalności. widoczność rodziców.Widoczność stylu CSS nie działa zgodnie z oczekiwaniami
Aby zilustrować, wziąć następujący przykład:
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
"http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<script type="text/javascript">
function hideTab(){
document.getElementById('tab1').style.visibility = 'hidden'
}
function showTab(){
document.getElementById('tab1').style.visibility = 'visible'
}
function hideContent(){
document.getElementById('tc1').style.visibility = 'hidden'
}
function showContent(){
document.getElementById('tc1').style.visibility = 'visible'
}
</script>
</head>
<body>
<a href="javascript: hideTab()">Hide Tab</a><br />
<a href="javascript: showTab()">Show Tab</a><br />
<a href="javascript: hideContent()">Hide Content</a><br />
<a href="javascript: showContent()">Show Content</a><br /><br />
<div id="tab1" style="background:yellow;width:100px">
<div id='tc1'>Content Text</div>
</div>
</body>
</html>
w IE8 kliknij 'Hide Tab', a następnie 'Pokaż Tab' to działa OK. Po wyświetleniu zakładki kliknij "Ukryj zawartość", a następnie "Pokaż zawartość" Jest to również poprawne. Teraz ponownie kliknij "Ukryj kartę" i powinieneś zobaczyć, jak karta zniknie, ale treść pozostanie niepoprawnie.
W IE8 problem znika, gdy korzystam z trybu zgodności. Ponadto zauważyłem, że jeśli usunę element DOCTYPE, nie mogę zreplikować problemu.
W Chrome (mój osobisty faworyt) problem jest trwały, niezależnie od elementu DOCTYPE. Nie próbowałem tego w firefoxie.
Jestem pewien, że istnieje bardzo dobry powód takiego zachowania, jestem również pewien, że będzie proste rozwiązanie, które sprawi, że moje zakładki będą działały poprawnie. Czekam na wasze komentarze.
zneak - Wielkie dzięki, to rozwiązało mój problem. Zgodnie z twoją radą ustawiam każdy element na "dziedziczony" po zmianie na "widoczny", a problem jest naprawiony. Dziękuję Ci. – SausageFingers