Figuren transparant maken met CSS

Hierboven staat vier keer hetzelfde plaatje. Achter de plaatjes staat het logo van deze website.

Het eerste plaatje is "gewoon'. Het tweede plaatje is een beetje doorzichtig, dat zie je aan het site-logo dat er doorheen komt. Het derde plaatje is doorzichtiger dan het tweede.
Om het vierde plaatje te zien, moet je goed kijken. Het is bijna volledig transparant.

Op deze bladzijde wordt uitgelegd hoe je het aanpakt om plaatjes doorzichtig te maken.

Opmerking: Hoewel dit wordt uitgelegd aan de hand van een paar plaatjes, kun je het ook toepassen op alle HTML-elementen die zichtbaar zijn (of zichtbaar te maken zijn) op het scherm: <p>, <div>, enz.

De dekkingsgraad veranderen met JavaScript
Als je de dekkingsgraad van een plaatje of ander element wilt veranderen kun je dat doen met JavaScript.
Klik met de muis een paar keer op het plaatje hiernaast. Je zult zien dat het plaatje bij elke klik transparanter wordt. Als het plaatje helemaal doorzichtig is geworden en je klikt er op komt het weer terug.

De code van het plaatje luidt: (Staat in de <BODY>)

<img src="plaatje_3.jpg" height="100" width="134" border="0"
  id="Voorbeeld" onclick="wijzigDekking()"
  style="opacity:1">

Behalve de gebruikelijke attributen height, witdh en border, is er ook een id="Voorbeeld" en onclick="wijzigDekking()". De function wijzigDekking() verandert de dekingsgraad van het plaatje. Deze function gebruikt de id om het plaatje te 'vinden', zodat het juiste plaatje wordt veranderd.
Om zeker te stellen dat de opacity-eigenschap van het plaatje beschikbaar is voor JavaScript, zodat de eigenschappen kunnen worden aangepast, is opacity gedefineeerd in het style-attribuut.

De benodigde JavaScript-code hier onder. (Staat in de <HEAD>).

<script type="text/javascript">
var my_dekking = 1;
function wijzigDekking() {
my_dekking -= .2;
  if (my_dekking < 0) my_dekking = 1;   // Reset opacity naar 1
  if (my_dekking < 0.1) my_dekking = 0; // Trucje om
                                  afrondingsfouten op te vangen
 
document.getElementById('Voorbeeld').style.opacity =
  my_dekking;
}
</script>

De 'huidige' dekking wordt in het JavaScript buiten de function wijzigDekking() bewaard. Dat is handiger (en sneller) dan bij elke aanroep van wijzigDekking() de CSS-eigenschap op te halen.

 
terug

html-354; Laatste wijziging: 17 mei 2020