nodebb-plugin-ezoic-infinite 1.8.30 → 1.8.32
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/package.json +1 -1
- package/public/style.css +85 -42
package/package.json
CHANGED
package/public/style.css
CHANGED
|
@@ -1,5 +1,10 @@
|
|
|
1
1
|
/*
|
|
2
|
-
* NodeBB Ezoic Infinite Ads — style.css (v20.
|
|
2
|
+
* NodeBB Ezoic Infinite Ads — style.css (v20.5)
|
|
3
|
+
* Objectif:
|
|
4
|
+
* - comportement v50-like (pas de rognage involontaire)
|
|
5
|
+
* - neutraliser les wrappers Ezoic "adaptive/multi" (970px inline) sur mobile
|
|
6
|
+
* - éviter l'affichage multi-annonces (forcer 1 annonce / ligne)
|
|
7
|
+
* - garder anti-sticky + gestion .is-empty
|
|
3
8
|
*/
|
|
4
9
|
|
|
5
10
|
/* ── Wrapper ──────────────────────────────────────────────────────────────── */
|
|
@@ -8,8 +13,12 @@
|
|
|
8
13
|
width: 100%;
|
|
9
14
|
margin: 0 !important;
|
|
10
15
|
padding: 0 !important;
|
|
11
|
-
|
|
12
|
-
|
|
16
|
+
|
|
17
|
+
/* Ne pas couper les ads rendues */
|
|
18
|
+
overflow: visible;
|
|
19
|
+
|
|
20
|
+
/* On évite les effets de layout imprévus avec certains thèmes */
|
|
21
|
+
contain: none;
|
|
13
22
|
}
|
|
14
23
|
|
|
15
24
|
/* Placeholder : 1px minimum pour rester visible par l'IntersectionObserver */
|
|
@@ -18,11 +27,12 @@
|
|
|
18
27
|
margin: 0 !important;
|
|
19
28
|
padding: 0 !important;
|
|
20
29
|
min-height: 1px;
|
|
30
|
+
max-width: 100%;
|
|
21
31
|
}
|
|
22
32
|
|
|
23
|
-
/* ── Ciblage précis des nœuds Ezoic dans nos wraps
|
|
33
|
+
/* ── Ciblage précis des nœuds Ezoic / Google dans nos wraps ──────────────── */
|
|
24
34
|
|
|
25
|
-
/* Supprime le gap "baseline" sous les iframes
|
|
35
|
+
/* Supprime le gap "baseline" sous les iframes */
|
|
26
36
|
.nodebb-ezoic-wrap iframe,
|
|
27
37
|
.nodebb-ezoic-wrap div[id$="__container__"] iframe {
|
|
28
38
|
display: block !important;
|
|
@@ -30,21 +40,41 @@
|
|
|
30
40
|
font-size: 0 !important;
|
|
31
41
|
}
|
|
32
42
|
|
|
33
|
-
|
|
43
|
+
/* Container Google/Ezoic : surtout PAS overflow hidden (sinon rognage) */
|
|
44
|
+
.nodebb-ezoic-wrap div[id$="__container__"],
|
|
45
|
+
.nodebb-ezoic-wrap [id^="google_ads_iframe_"][id$="__container__"] {
|
|
34
46
|
display: block !important;
|
|
35
47
|
line-height: 0 !important;
|
|
36
48
|
font-size: 0 !important;
|
|
49
|
+
overflow: visible !important;
|
|
50
|
+
|
|
51
|
+
margin-left: auto !important;
|
|
52
|
+
margin-right: auto !important;
|
|
53
|
+
|
|
54
|
+
box-sizing: border-box !important;
|
|
55
|
+
max-width: 100% !important;
|
|
37
56
|
}
|
|
38
57
|
|
|
39
|
-
/*
|
|
58
|
+
/* Conteneur Ezoic : ne pas casser la hauteur, centrer */
|
|
40
59
|
.nodebb-ezoic-wrap .ezoic-ad,
|
|
41
60
|
.nodebb-ezoic-wrap span.ezoic-ad {
|
|
42
61
|
display: block !important;
|
|
43
|
-
margin: 0 !important;
|
|
62
|
+
margin: 0 auto !important;
|
|
44
63
|
padding: 0 !important;
|
|
64
|
+
|
|
45
65
|
height: auto !important;
|
|
46
66
|
min-height: unset !important;
|
|
47
67
|
max-height: none !important;
|
|
68
|
+
|
|
69
|
+
box-sizing: border-box !important;
|
|
70
|
+
max-width: 100% !important;
|
|
71
|
+
}
|
|
72
|
+
|
|
73
|
+
/* Iframes : centrées, bornées */
|
|
74
|
+
.nodebb-ezoic-wrap iframe {
|
|
75
|
+
margin-left: auto !important;
|
|
76
|
+
margin-right: auto !important;
|
|
77
|
+
max-width: 100% !important;
|
|
48
78
|
}
|
|
49
79
|
|
|
50
80
|
/* Reportline en absolu pour ne pas impacter le layout */
|
|
@@ -59,10 +89,6 @@
|
|
|
59
89
|
}
|
|
60
90
|
|
|
61
91
|
/* ── État vide ────────────────────────────────────────────────────────────── */
|
|
62
|
-
/*
|
|
63
|
-
Ajouté après le délai d'empty-check si aucun fill détecté.
|
|
64
|
-
Collapse à 1px : réserve minimale, reste observable par l'IO.
|
|
65
|
-
*/
|
|
66
92
|
.nodebb-ezoic-wrap.is-empty {
|
|
67
93
|
display: block !important;
|
|
68
94
|
height: 1px !important;
|
|
@@ -73,8 +99,7 @@
|
|
|
73
99
|
overflow: hidden !important;
|
|
74
100
|
}
|
|
75
101
|
|
|
76
|
-
/* Anti-faux-empty : si
|
|
77
|
-
(support moderne; si non supporté, le JS enlève .is-empty) */
|
|
102
|
+
/* Anti-faux-empty : si une pub est là, on ne collapse pas */
|
|
78
103
|
.nodebb-ezoic-wrap.is-empty:has(iframe),
|
|
79
104
|
.nodebb-ezoic-wrap.is-empty:has([data-google-container-id]),
|
|
80
105
|
.nodebb-ezoic-wrap.is-empty:has(div[id$="__container__"]) {
|
|
@@ -84,45 +109,63 @@
|
|
|
84
109
|
overflow: visible !important;
|
|
85
110
|
}
|
|
86
111
|
|
|
87
|
-
/* ──
|
|
88
|
-
|
|
89
|
-
|
|
90
|
-
.
|
|
91
|
-
|
|
92
|
-
|
|
93
|
-
|
|
94
|
-
|
|
112
|
+
/* ── Fix: Ezoic "adaptive/multi" qui force 970px & multi-annonces ────────── */
|
|
113
|
+
/*
|
|
114
|
+
Certains placements "adaptive/multi" gardent des inline styles:
|
|
115
|
+
width/min-width: 970px + display:flex + plusieurs blocs 300x250.
|
|
116
|
+
Ce n'est pas souhaité -> on:
|
|
117
|
+
- neutralise les largeurs forcées
|
|
118
|
+
- empêche l'affichage multi en ne gardant que le 1er slot rendu
|
|
119
|
+
- force une mise en page "1 annonce centrée"
|
|
120
|
+
*/
|
|
95
121
|
|
|
96
|
-
/*
|
|
97
|
-
.nodebb-ezoic-wrap .ezoic-ad,
|
|
98
|
-
.nodebb-ezoic-wrap
|
|
99
|
-
|
|
122
|
+
/* Neutralise les inline width/min-width (970px) sur ces wrappers */
|
|
123
|
+
.nodebb-ezoic-wrap .ezoic-ad-adaptive,
|
|
124
|
+
.nodebb-ezoic-wrap .adtester-container,
|
|
125
|
+
.nodebb-ezoic-wrap [class*="Content-multi-"] {
|
|
100
126
|
width: auto !important;
|
|
127
|
+
min-width: 0 !important;
|
|
101
128
|
max-width: 100% !important;
|
|
102
|
-
margin-left: auto !important;
|
|
103
|
-
margin-right: auto !important;
|
|
104
129
|
box-sizing: border-box !important;
|
|
105
130
|
}
|
|
106
131
|
|
|
107
|
-
/*
|
|
108
|
-
.nodebb-ezoic-wrap
|
|
109
|
-
.nodebb-ezoic-wrap
|
|
132
|
+
/* Ces wrappers sont souvent en flex -> on les remet en bloc centrable */
|
|
133
|
+
.nodebb-ezoic-wrap .ezoic-ad-adaptive,
|
|
134
|
+
.nodebb-ezoic-wrap .adtester-container {
|
|
110
135
|
display: block !important;
|
|
111
|
-
width: auto !important;
|
|
112
|
-
max-width: 100% !important;
|
|
113
136
|
margin-left: auto !important;
|
|
114
137
|
margin-right: auto !important;
|
|
115
|
-
overflow: hidden !important; /* coupe ce qui dépasse sans décaler la page */
|
|
116
|
-
box-sizing: border-box !important;
|
|
117
138
|
}
|
|
118
139
|
|
|
119
|
-
/*
|
|
120
|
-
.
|
|
121
|
-
|
|
122
|
-
|
|
123
|
-
|
|
124
|
-
|
|
125
|
-
|
|
140
|
+
/* Si Ezoic met plusieurs "Content-multi-XXX" dans le même placeholder:
|
|
141
|
+
on masque toutes les occurrences sauf la première. */
|
|
142
|
+
.nodebb-ezoic-wrap [class*="Content-multi-"] ~ [class*="Content-multi-"] {
|
|
143
|
+
display: none !important;
|
|
144
|
+
}
|
|
145
|
+
|
|
146
|
+
/* Si plusieurs containers Google sont présents (multi slots), on masque tout sauf le premier */
|
|
147
|
+
.nodebb-ezoic-wrap div[id$="__container__"] ~ div[id$="__container__"] {
|
|
148
|
+
display: none !important;
|
|
149
|
+
}
|
|
150
|
+
|
|
151
|
+
/* ── Mobile: éviter tout débordement horizontal ──────────────────────────── */
|
|
152
|
+
@media (max-width: 767px) {
|
|
153
|
+
/* On s'assure que les wrappers ne gardent pas de min-width forcé */
|
|
154
|
+
.nodebb-ezoic-wrap .ezoic-ad,
|
|
155
|
+
.nodebb-ezoic-wrap span.ezoic-ad,
|
|
156
|
+
.nodebb-ezoic-wrap .ezoic-ad-adaptive,
|
|
157
|
+
.nodebb-ezoic-wrap .adtester-container,
|
|
158
|
+
.nodebb-ezoic-wrap [class*="Content-multi-"] {
|
|
159
|
+
min-width: 0 !important;
|
|
160
|
+
width: auto !important;
|
|
161
|
+
max-width: 100% !important;
|
|
162
|
+
}
|
|
163
|
+
|
|
164
|
+
/* Si un thème parent clippe encore, on préfère un scroll interne au rognage */
|
|
165
|
+
.nodebb-ezoic-wrap > [id^="ezoic-pub-ad-placeholder-"] {
|
|
166
|
+
overflow-x: auto !important;
|
|
167
|
+
-webkit-overflow-scrolling: touch;
|
|
168
|
+
}
|
|
126
169
|
}
|
|
127
170
|
|
|
128
171
|
/* ── Ezoic global (hors de nos wraps) ────────────────────────────────────── */
|