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?
Annonceindlæg tema
Forsvar & beredskab
Cybersikkerhed, realtidsdata og robuste it-systemer er blevet fundamentet for moderne forsvar.
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";
22. februar 2008 - 12:17
#2
html, body skal have {width: 100%;margin:0px;height: 100%;padding:0px}
22. februar 2008 - 12:27
#3
Jeg lurer lige på det :)
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
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?
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>
22. februar 2008 - 13:14
#7
Ja det kræver dog at du ligger elementet absolut positioneret der inde i.. /JJ
22. februar 2008 - 13:19
#8
jamen min fullopadiv har jo position:absolute?
22. februar 2008 - 13:20
#9
btw smid lige et svar, da mit oprindelige spørgsmål jo er løst :D
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
22. februar 2008 - 15:21
#11
Det var rar :) - tak for hjælpen :)
22. februar 2008 - 15:22
#12
selv tak
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>
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 :)
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 =)
Vi tilbyder markedets bedste kurser inden for webudvikling