Avatar billede laksen Nybegynder
31. marts 2005 - 16:03 Der er 10 kommentarer og
1 løsning

Halvgennemsigtigt billede

Jeg har nogle billeder i en oversigt og kunne godt tænke mig, at de enkelte billeder bliver halvgennemsigtige, når man fører musen hen over et af dem.

Jeg gider ikke sidde og lave de halvgennemsigtige billeder individuelt i et billedeprogram, hvorfor jeg søger en nemmere løsning.

Jeg kender godt til javascript-teknikken ved mouseover, mouseout osv.

Mit spørgsmål er derfor: kan man behandle et billede vha. PHP, så det bliver halvgennemsigtigt? Der skal så at sige lægges en "hvid skygge" oven på et billede.

Der skal ikke være tale om en "kornet" løsning - dvs. at hver 2. prik laves hvid, mens hver 2. efterlades uberørt, hvorved en lignende effekt opnås. Jeg ønsker at samtlige pixels i det pågældende billede skal laves lysere.

Kan det lade sig gøre??
Avatar billede bromer Nybegynder
31. marts 2005 - 16:07 #1
Hmm, for det førset vil du få et meget lidt synligt billede, hvis du udskifter halvdelen af de pixel der er i billedet med hvide.

Jeg synes du skal læse denne tråd: http://www.eksperten.dk/spm/603655. Den omhandler en drop down menu, men i slutningen får de lavet den halv gennemsnitig. Prøv at se om du ikke kan benytte samme CSS på dit billede. Det vil helt klart give den bedste effekt og det mindste arbejde for dig.
Avatar billede laksen Nybegynder
31. marts 2005 - 16:42 #2
Jeg har nu lavet følgende 2 funktioner:

function gallery_over(element){
  element.style.filter='progid:DXImageTransform.Microsoft.Alpha(opacity=70)';
  element.style.MozOpacity='0.70';
  element.style.opacity='0.70';
}
function gallery_out(element){
  element.style.filter='progid:DXImageTransform.Microsoft.Alpha(opacity=100)';
  element.style.MozOpacity='1.00';
  element.style.opacity='1.00';
}

Det virker bare perfekt i IE6 og Firefox.

Så vidt jeg kan se benytter IE den første linie i mine funktioner og Firefox den 3. linie i min funktioner. Dog ved jeg ikke hvilken browser, der benytter 2. linie i mine funktioner.

Ved du, om min "omfortolkning" af css-linien "-moz-opacity" til js-linien "MozOpacity" er korrekt? Er nemlig ikke selv sikker, men normal bliver f.eks. css-linien "background-color" til js-linien "backgroundColor". Altså: "-" bliver erstattet af et stort begyndelsesbogstav i næste ord.
Avatar billede bromer Nybegynder
31. marts 2005 - 16:46 #3
Jeg mener at Firefox og andre gecko browsere benytter en anden linie og tredie linie er standarden eller noget i den stil :)
Avatar billede laksen Nybegynder
31. marts 2005 - 16:51 #4
Men tror du, at den er korrekt "oversat"?
Avatar billede bromer Nybegynder
31. marts 2005 - 17:13 #5
hvad mener du med oversat?
Avatar billede laksen Nybegynder
31. marts 2005 - 17:19 #6
I det link du sendte stod følgende:
div.submenu {
  width: 150px;
  position: absolute;
  z-index: 1;
  visibility: hidden;
  border: 1px solid #808080;
  background-color: #5A6994;
  filter: progid:DXImageTransform.Microsoft.Alpha(opacity=90);
  -moz-opacity: 0.90;
  opacity: 0.90;
}

Jeg i stedet skrevet ovenstående om til java script:
function gallery_over(element){
  element.style.filter='progid:DXImageTransform.Microsoft.Alpha(opacity=70)';
  element.style.MozOpacity='0.70';
  element.style.opacity='0.70';
}

Altså er "-moz-opacity" oversat til "MozOpacity". Jeg tror, at det burde være korrekt, men jeg er ikke sikker, da jeg aldrig før i javascript har brugt et style-element, der starter med "-".

Forstår du?
Avatar billede bromer Nybegynder
31. marts 2005 - 17:38 #7
jeg er med nu.. det skal være "-moz-opacity"
Avatar billede Slettet bruger
31. marts 2005 - 19:34 #8
Du kan gøre det med gdlib, men det er _meget_ kompliceret
Avatar billede laksen Nybegynder
31. marts 2005 - 21:12 #9
Jeg har ikke behov for det der gdlib, da css-løsningen allerede fungerer. Ellers tak for tippet.

Hvis jeg sætter js-linien til "-moz-opacity" dur scriptet slet ikke. Så er det jo ikke gyldig js-syntax. Elementer i "style.[et css element]" må jo ikke indeholde "-". Det er derfor css-linien "background-color" skal være "backgroundColor" i js. Mit spørgsmål var derfor egentlig blot, hvordan man "oversætter" en streg i starten af en css-kode.

Hvis det er helt sort, så glem det og læg et svar. Det virker som sagt i IE og i Firefox, så jeg overlever nok med det.
Avatar billede bromer Nybegynder
31. marts 2005 - 21:14 #10
jeg misforstod dig bare. Så tror jeg bestemt du har ret med din "oversættelse"
Avatar billede laksen Nybegynder
31. marts 2005 - 21:20 #11
Jeg takker i hvert fald for hurtig og kompetent hjælp!
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