Bonjour,
J'affiche sur une page, les caractéristiques inhérentes à une série télévisée (producteurs, réalisateurs, acteurs).
Certaines séries contiennent des périodes. Sur celles-ci, j'ai un écart entre le titre de la section 'DISTRIBUTION' et la liste du casting.
Je ne parviens pas à réduire cet écart. Pour cela, il me faudrait pouvoir appliquer des paramètres différentes aux balises <span> qui affichent
la période et aux balises <p> qui affichent les acteurs et rôles.
Voici le résultat escompté:
Voila ce que j'obtiens:
Voila mon code PHP:
Code php : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39 <!-- CAST SECTION DISPLAY --> <h2 class="seriesSubtitles">DISTRIBUTION</h2> <div> <?php // Cast Query $sql = <<<SQL SELECT S.seriesId, CP.characterId AS charId, P.personId, seriesTitle, characterName AS charName, personName, appearanceOrder AS appOrder, period, periodNumber AS periodNum FROM CASTING AS C JOIN SERIES AS S ON S.seriesId = C.seriesId JOIN PERSON AS P ON P.personId = C.personId JOIN CHAR_PLAYED AS CP ON CP.characterId = C.characterId WHERE S.seriesId = :seriesId ORDER BY periodNum, appOrder SQL; $castQuery = $pdo->prepare($sql); $castQuery->bindParam(':seriesId', $seriesId, PDO::PARAM_INT); $castQuery->execute(); $rows = $castQuery->fetchAll(); if ($rows[0]['period'] == '-') { foreach ($rows as $row) { $cast[$row['charName']][] = $row['personName']; } foreach ($cast as $char => $persons) { echo '<p class="castAndCrew">', implode(' -> ', $persons), " : {$char}</p>"; } } else { foreach ($rows as $row) { $cast[$row['period']][$row['charName']][] = $row['personName']; } foreach ($cast as $period => $chars) { echo "<span id='castSubtitle' class='castAndCrew'>".$period."</span>"; foreach ($chars as $char => $persons) { echo '<p class="castAndCrew">', implode(' -> ', $persons), " : {$char}</p>"; } } } ?> </div>
Et mon CSS:
Code css : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86 @font-face { font-family: "Bookman Old Style"; src: url("../fonts/bookman.ttf") format("truetype"); } .series { display: flex; font-size: 12px; text-align: center; } figure.poster { flex: 50%; position: fixed; top: 1em; left: 15rem; } img.seriesImage { width: 100px; box-shadow: 3px 3px 4px 3px rgba(255, 255, 255, 0.6); border-radius: 2px; } .imageText { position: absolute; left: 50%; right: 50%; transform: translate(-50%, -50%); bottom: 8px; font-size: 18px; } article.seriesRecord { flex: 50%; } .castAndCrew { font: 12px "Bookman Old Style"; line-height: 30%; color: #000; margin-top: 1.5rem; } p.castAndCrew { margin-bottom: -0.7rem; } span.castAndCrew { display: inline-block; position: relative; top: 1.2rem; padding-bottom: 0.7rem; } .seriesTitle, .seriesSubtitles, .castAndCrew { font-family: "Bookman Old Style"; font-weight: bold; } .seriesTitle { font-size: 22px; color: #ff0000; } #spinOff { /*Utilisation d'une balise <span>*/ position: relative; font: 16px "Bookman Old Style"; font-weight: bold; color: #ff0000; top: -1rem; } .seriesSubtitles { font-size: 14px; color: #000; padding-top: 2rem; padding-bottom: 0.2rem; } .retour { display: block; padding-top: 2rem; } .retour > span { margin-top: 2rem; } .retour a { font-size: 18px; font-weight: bold; text-decoration: underline; color: #0000ff; }
Partager