Avatar billede Six Nybegynder
22. februar 2008 - 11:42 Der er 14 kommentarer og
1 løsning

CSS: Top layer 100% og 50% transparent.+

Hej eksperter.

Jeg har efterhånden set en del gallerier, der når man viser et billede i fuld størrelse "grayer" baggrunden ud med en transparent div. Så billedet har fuld fokus. Spørgsmålet er så: Hvordan får man lavet den div, der grayer det hele ud?
Avatar billede jokkejensen Novice
22. februar 2008 - 12:17 #1
Du ligger bare et div umiddelbart efter dit body tag..

<div style="position:absolute;top:0px;left:0px;width: 100%;height: 100%;filter: alpha(opacity=40);-moz-opacity:40%;background-color:gray;display;none;">



</div>

Toogle det så med elm.style.display = "block";
Avatar billede jokkejensen Novice
22. februar 2008 - 12:17 #2
html, body skal have {width: 100%;margin:0px;height: 100%;padding:0px}
Avatar billede Six Nybegynder
22. februar 2008 - 12:27 #3
Jeg lurer lige på det :)
Avatar billede Six Nybegynder
22. februar 2008 - 12:37 #4
Jeg kan ikke rigtigt få det til at spille...

<div id="graydiv" style="position:absolute;top:0px;left:0px;width: 100%;height: 100%;filter: alpha(opacity=40);-moz-opacity:40%;background-color:gray;display;none;" onClick="showOrHide('graydiv');">
</div>

<script type="text/javascript">
    function showOrHide(id) {
        if(document.getElementById(id).style.display == "none") document.getElementById(id).style.display = 'block';
        else document.getElementById(id).style.display = 'block';
    }
</script>

Jeg er ikke skarp til det her skal det lige siges ;D
Avatar billede Six Nybegynder
22. februar 2008 - 12:39 #5
else document.getElementById(id).style.display = 'block'; så virker det jo perfekt ;)

Men - løsningen fungerer ikke i firefox, findes der et twist til det?
Avatar billede Six Nybegynder
22. februar 2008 - 13:08 #6
Nå, fandt ud af at man skal skrive .40 istedet for 40% ved -moz-opacity, så virkede det. Selvom min browser burde kunne bruge alpha(opacity=40).. jeg ved ikke hvorfor?

Men kan det lade sig gøre at have en div der ikke har opacity, ovenpå den der er gennemsigtig?

Har forsøgt mig med:
<div id="graydiv" style="position:absolute;top:0px;left:0px;width: 100%;height: 100%;filter: alpha(opacity=40);-moz-opacity:.40;background-color:gray;display:block;" onClick="showOrHide('graydiv'); showOrHide('fullopadiv');">

    <div id="fullopadiv" style="position:absolute;top:0px;left:0px; background-color:gray;display:block;filter: alpha(opacity=100);-moz-opacity:100;">
      <!--[if IE]>
    <object type="text/html" classid="clsid:25336920-03F9-11CF-8FD0-00AA00686F13" data="insertdata.php">
    <p>backup content</p>
    </object>
    <![endif]-->
    <!--[if !IE]> <-->
    <object type="text/html" data="insertdata.php">
    <p>backup content</p>
    </object>
    <!--> <![endif]-->
    </div>
</div>
Avatar billede jokkejensen Novice
22. februar 2008 - 13:14 #7
Ja det kræver dog at du ligger elementet absolut positioneret der inde i..

/JJ
Avatar billede Six Nybegynder
22. februar 2008 - 13:19 #8
jamen min fullopadiv har jo position:absolute?
Avatar billede Six Nybegynder
22. februar 2008 - 13:20 #9
btw smid lige et svar, da mit oprindelige spørgsmål jo er løst :D
Avatar billede jokkejensen Novice
22. februar 2008 - 13:27 #10
<div id="fullopadiv" style="position:absolute;top:0px;left:0px; background-color:gray;display:block;filter: alpha(opacity=100);-moz-opacity:100;">
<div style="postition: absolute;left: 40%; top:40%;">
      <!--[if IE]>
    <object type="text/html" classid="clsid:25336920-03F9-11CF-8FD0-00AA00686F13" data="insertdata.php">
    <p>backup content</p>
    </object>
    <![endif]-->
    <!--[if !IE]> <-->
    <object type="text/html" data="insertdata.php">
    <p>backup content</p>
    </object>
    <!--> <![endif]-->
    </div>
</div>
</div>

noget ala det :)...

/JJ
Avatar billede Six Nybegynder
22. februar 2008 - 15:21 #11
Det var rar :) - tak for hjælpen :)
Avatar billede jokkejensen Novice
22. februar 2008 - 15:22 #12
selv tak
Avatar billede olebole Juniormester
22. februar 2008 - 17:16 #13
<ole>

- husk, at -moz-opacity kan have værdier fra 0 til 1 ... ikke fra 0 til 100. Det samme gælder forøvrigt CSS-property'en opacity  ;o)

/mvh
</bole>
Avatar billede Six Nybegynder
22. februar 2008 - 17:27 #14
Ja ok, det kan jeg godt se - nu du siger det :) det er jo derfor det skal være .40 og ikke 40 ;)

Takker for påmindelsen :)
Avatar billede olebole Juniormester
22. februar 2008 - 17:34 #15
Selvtak - du behøver heller ikke bruge to forskellige object-tags. IE kan sagtens forstå et object-tag uden classid - og koden er ikke valid med calssid  =)
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Vi tilbyder markedets bedste kurser inden for webudvikling

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester