Ik ben bezig met het opzetten van een nieuwsbrief. Hierin heb ik twee aanbiedingen die in twee kolommen getoond dienen te worden. In de meeste artikelen die ik heb gelezen over het gebruik van webmail, staat dat je inline styles moet gebruiken omdat de meeste email clients alles uit de head tag verwijderen.

Nu zit ik met het volgende probleem. In de foreach loop voor de aanbiedingen moet het eerste record een rechter marge hebben van 120px terwijl de tweede geen rechter marge heeft. Hoe doe ik dit?

<?php if ($aanbieding == ?): ?>
    style="margin: 0 120px 0 0;"
<?php else: ?>
    style="margin: 0;"
<?php endif; ?>

Omdat ik inline styles gebruikt hebben beidde li tags de rechter marge van 120px dus wordt de tweede onder de eerste geplaatst

Misschien een stomme vraag maar ik krijg het niet voor elkaar.

Alvast bedankt

Toevoeging op 30/04/2016 12:56:21:

I tried the following after googling for something similar:


$num = 0;
foreach ($aanbiedingen as $aanbieding): 
$margin = ($num % 2 == 0) ? '0 120px 0 0' : '0'


And in the HTML


margin: <?php echo $margin; ?>;


But that is not working
Je gebruikt hiervoor listitems? Kun je niet gewoon wat divjes floaten in een container? Geen idee of dat lekker werkt in een nieuwsbrief, maar dat klinkt mij natuurlijker in de oren dan een bulleted list op deze manier weergeven.
Hoi Thomas

heb je helemaal gelijk in. Blijft toch de if else vraag bestaan, want daar gaat het me om. Wat moet er in de if else statement komen te staan zodat de eerste div een rechter marge heeft van 120px en de tweede div geen rechter marge heeft?
Maak eens van "$num % 2 == 0" eens dit: "$num % 2", maybe it does the trick.
Wat zit er in $margin en $num?
Ik zie in bovenstaande code niet dat je $num verhoogd.
Hi PHP Maarten. Bedankt voor de reactie. Weet niet wat ik fout do maar hij geeft voor allebei de div's/li's nog steeds de zelfde margins

Dit is wat ik nu heb:


$num = 0;
foreach ($aanbiedingen as $aanbieding):
$margin = ($num % 2) ? '0 120px 0 0' : '0'



margin: <?php echo $margin; ?> !important;
Obelix en Idefix op 01/05/2016 10:02:40

Ik zie in bovenstaande code niet dat je $num verhoogd.


Mmm ik weet neit helemaal zeker of ik je begrijp San The?
$num moet wel in de loop worden verhoogd anders werkt het nooit.

$num++;
of
$num = $num+1;
Binnen de foreach loop bedoel je?

Hoe komt het bovenstaande er dan uit te zien. Het gaat slechts om twee records
<?php
$num = 0;
foreach(.......)
{
// doe iets
$num++;
}
?>

Reageren