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
87
88
89
90
91
92
93
94
95
96
97
98
99
|
/*
SoundManager 2 + useFlashBlock
Flash positioning and flashblock / clicktoflash handling
*/
#sm2-container {
/*
where the SM2 flash movie goes. by default, relative container.
set relative or absolute here, and don't touch it later or bad things will happen (see below comments.)
*/
position:relative;
width:1px;
height:1px;
_overflow:hidden; /* screw IE 6, just make it display nice */
}
#sm2-container object,
#sm2-container embed {
/*
the actual movie bit.
SWF needs to be able to be moved off-screen without display: or position: changes. important.
changing display: or position: or overflow: here or on parent can cause SFW reload or other weird issues after unblock,
eg. SM2 starts but strange errors, no whileplaying() etc.
*/
position:absolute;
}
#sm2-container object,
#sm2-container embed,
#sm2-container.swf_timedout,
#sm2-container.swf_timedout object,
#sm2-container.swf_timedout embed {
/*
when SM2 didn't start normally, time-out case. flash blocked, missing SWF, no flash?
48px square flash placeholder is typically used by blockers.
*/
left:auto;
top:auto;
width:48px;
height:48px;
}
#sm2-container.swf_unblocked {
/* SWF unblocked, or was never blocked to begin with; try to collapse container as much as possible. */
width:1px;
height:1px;
}
#sm2-container.swf_unblocked object,
#sm2-container.swf_unblocked embed {
/* hide flash off-screen (relative to container) when it has loaded OK */
left:-9999em;
top:-9999em;
}
#sm2-container.swf_error {
/* when there is a fatal error (flash loaded, but SM2 failed) */
display:none;
}
#sm2-container.high_performance {
/* "high performance" case: keep on-screen at all times */
position:absolute;
position:fixed;
_top:-9999px; /* IE 6 hax, no position:fixed */
_left:-9999px;
bottom:0px;
left:0px;
/*
special case: show at first with w/h, hide when unblocked.
might be bad/annoying.
*/
width:48px;
height:48px;
z-index:99; /* try to stay on top */
}
#sm2-container.high_performance.swf_unblocked {
z-index:auto;
}
#sm2-container.high_performance.swf_unblocked,
#sm2-container.high_performance.swf_unblocked object,
#sm2-container.high_performance.swf_unblocked embed {
/* 8x8px is required minimum to load in fx/win32 in some cases(?), 6x6+ good for fast performance, even better when on-screen via position:fixed */
width:8px;
height:8px;
}
#sm2-container.high_performance.swf_unblocked object,
#sm2-container.high_performance.swf_unblocked embed {
/* high-performance case must stay on-screen */
left:auto;
top:auto;
}
#sm2-container.high_performance.swf_timedout {
z-index:99; /* try to stay on top */
}
|