By using this site, you agree to our updated Privacy Policy and our Terms of Use. Manage your Cookies Settings.
437,636 Members | 1,190 Online
Bytes IT Community
+ Ask a Question
Need help? Post your question and get tips & solutions from a community of 437,636 IT Pros & Developers. It's quick & easy.

Re: hide whole body but one div

P: n/a
On Jul 2, 5:57*pm, Jorge wrote:
<snip>
document.body.style.visibility= "none";
<snip>

The specified values for the CSS 'visibility' property do not include
'none'. Such a declaration should be ignored, and if not ignored can
be expected to be subject to inconsistent handling.
Jul 2 '08 #1
Share this Question
Share on Google+
7 Replies


P: n/a
On Jul 2, 7:09*pm, Henry <rcornf...@raindrop.co.ukwrote:
On Jul 2, 5:57*pm, Jorge wrote:
<snip>document.body.style.visibility= "none";

<snip>

The specified values for the CSS 'visibility' property do not include
'none'. Such a declaration should be ignored, and if not ignored can
be expected to be subject to inconsistent handling.
Hmmm, yes :

document.body.style.visibility= "hidden";
(document.getElementById('centerPage')).style.visi bility= "visible";

--Jorge
Jul 2 '08 #2

P: n/a
SAM
Jorge a écrit :
>
document.body.style.visibility= "hidden";
(document.getElementById('centerPage')).style.visi bility= "visible";
With an other way that could interest the OP :
- remove all divs and show the right one
Variante 1 : <http://cjoint.com/?hcvUjZSFGt>
Variante 2 : <http://cjoint.com/?hcvWd8I0zj>

I leave to you the opportunity to get time(s) of execution ;-)

--
sm
Jul 2 '08 #3

P: n/a
Thanks for your answers... I will study links you provided me.

What I want to do is to load some page (like google.com) hide it and
then display only one div.

Problem with visibility is that hidden elements still keep their
places... for that display="none" looks much better, but unfortunately
does not work with nested elements to be visible

Jul 2 '08 #4

P: n/a
On Jul 2, 9:51*pm, SAM <stephanemoriaux.NoAd...@wanadoo.fr.invalid>
wrote:
Jorge a écrit :
document.body.style.visibility= "hidden";
(document.getElementById('centerPage')).style.visi bility= "visible";

With an other way that could interest the OP :
* - remove all divs and show the right one
Variante 1 : <http://cjoint.com/?hcvUjZSFGt>
Variante 2 : <http://cjoint.com/?hcvWd8I0zj>
Good idea. I have mixed all 3 in a single file : http://tinyurl.com/64h5x2

1.- Hide by setting style.visibility= "hidden"
2.- Hide by extracting the element out of document.body.
3.- Hide by setting style.display= "none".

But the OP question still remains unanswered : if
document.body.style.display === "none", is there a way to override
this setting on an inner element ?

I don't know the answer.

I know that document.body.style.visibility= "hidden" can be easily
overriden on an inner element just by setting the element's
style.visibility= "visible". How can this be done if
document.body.style.display === "none" ?
I leave to you the opportunity to get time(s) of execution ;-)
8-)

--Jorge
Jul 2 '08 #5

P: n/a
On Jul 3, 9:37*am, Jorge <jo...@jorgechamorro.comwrote:
On Jul 2, 9:51*pm, SAM <stephanemoriaux.NoAd...@wanadoo.fr.invalid>
wrote:
Jorge a écrit :
document.body.style.visibility= "hidden";
(document.getElementById('centerPage')).style.visi bility= "visible";
With an other way that could interest the OP :
* - remove all divs and show the right one
Variante 1 : <http://cjoint.com/?hcvUjZSFGt>
Variante 2 : <http://cjoint.com/?hcvWd8I0zj>

Good idea. I have mixed all 3 in a single file :http://tinyurl.com/64h5x2

1.- Hide by setting style.visibility= "hidden"
2.- Hide by extracting the element out of document.body.
3.- Hide by setting style.display= "none".

But the OP question still remains unanswered : if
document.body.style.display === "none", is there a way to override
this setting on an inner element ?
That is a CSS question, the answer is in the CSS 2.1 Specification:

'display'
[...]
none
This value causes an element to generate no boxes in
the formatting structure (i.e., the element has no effect on
layout). Descendant elements do not generate any boxes either;
this behavior cannot be overridden by setting the 'display'
property on the descendants.

<URL: http://www.w3.org/TR/CSS21/visuren.html#propdef-display >

I don't know the answer.
You should now :-)
I know that document.body.style.visibility= "hidden" can be easily
overriden on an inner element just by setting the element's
style.visibility= "visible".
Because that is how visibility is specified to work:

<URL: http://www.w3.org/TR/CSS21/visufx.ht...def-visibility >
How can this be done if
document.body.style.display === "none" ?
It can't in a UA that conforms with CSS 2.1.
--
Rob
Jul 3 '08 #6

P: n/a
On Jul 3, 4:31*am, RobG <rg...@iinet.net.auwrote:
*'display'
*[...]

* * this behavior cannot be overridden by setting the 'display'
* * property on the descendants.

<URL:http://www.w3.org/TR/CSS21/visuren.html#propdef-display>
I don't know the answer.

You should now :-)
Clear as an azure sky of deepest summer.

/8¬)

Thanks,
--Jorge.
Jul 3 '08 #7

P: n/a
SAM
Jorge a écrit :
>
But the OP question still remains unanswered : if
document.body.style.display === "none", is there a way to override
this setting on an inner element ?

I don't know the answer.
I think : no.
I'm surprised that visibilty works.
But all that is a question of logic.
>I leave to you the opportunity to get time(s) of execution ;-)

8-)
¡Tanto peor! jamás lo sabría.

javascript:document.body.innerHTML=document.getEle mentById('aDiv').innerHTML;

told us Evertjean

and button back to reverse I presume

Plus simple tu meurs ;-)

--
sm
Jul 3 '08 #8

This discussion thread is closed

Replies have been disabled for this discussion.