-
Notifications
You must be signed in to change notification settings - Fork 0
/
sound.css
87 lines (87 loc) · 3.26 KB
/
sound.css
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
/*
SoundManager 2: Basic MP3 player CSS
------------------------------------
Clicks on links to MP3s are intercepted via JS, calls are
made to SoundManager to load/play sounds. CSS classes are
appended to the link, which are used to highlight the
current play state and so on.
Class names are applied in addition to "sm2_button" base.
Default:
sm2_button
Additional states:
sm2_playing
sm2_paused
eg.
<!-- default -->
<a href="some.mp3" class="sm2_button">some.mp3</a>
<!-- playing -->
<a href="some.mp3" class="sm2_button sm2_playing">some.mp3</a>
Note you don't require ul.graphic / ul.flat etc. for your use
if only using one style on a page. You can just use .sm2_button{}
and so on, but isolate the CSS you want.
Side note: Would do multiple class definitions eg.
a.sm2_default.sm2_playing{}
.. except IE 6 has a parsing bug which may break behaviour,
applying sm2_playing {} even when the class is set to sm2_default.
If you want to make your own UI from scratch, here is the base:
Default + hover state, "click to play":
a.sm2_button {}
a.sm2_button:hover {}
Playing + hover state, "click to pause":
a.sm2_playing {}
a.sm2_playing:hover {}
Paused + hover state, "click to resume":
a.sm2_paused {}
a.sm2_paused:hover {}
*/
a.sm2_button {
position:relative;
display:inline-block; /* If you worry about old browser bugs, Firefox 2 might not like this and may need -moz-inline-box instead. :D */
width:18px;
height:18px;
text-indent:-9999px; /* don't show link text */
overflow:hidden; /* don't draw inner link text */
vertical-align:middle;
/* and, a bit of round-ness for the cool browsers. */
border-radius:6px;
margin-top:-1px; /* vertical align tweak */
/* safari 3.1+ fun (/W3 working draft extension, TBD.) */
-webkit-transition-property: hover;
-webkit-transition: all 0.2s ease-in-out;
-moz-transition: all 0.2s ease-in-out 0s; /* firefox 4 (couldn't sort out -moz-transform vs. MozTransform, so, "all" for now) */
-o-transition-property: background-color; /* opera 10.5 */
-o-transition-duration: 0.15s;
/* weird IE 6/7 display fixes, and/or I'm doing it wrong */
*text-indent:0px;
*line-height:99em;
*vertical-align: top;
}
a.sm2_button:focus {
outline:none; /* maybe evil, but don't show the slight border outline on focus. */
}
a.sm2_button,
a.sm2_button.sm2_paused:hover {
background-color:#3399cc;
background-image:url(../image/arrow-right-white.png);
/* where possible, use data: and skip the HTTP request. Fancy-pants. Would use short-hand background: for above, but IE 8 doesn't override background-image. */
background-image:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAkAAAAKCAYAAABmBXS+AAAAbklEQVQY02NgQAL//v1jZMAF/v//vwuIs9HEUBUBTbj4HwIeA3EGVsVAxtn/qOAVUGM8uknIiv4hsV8A5ZKxKfoLVvnvHwifAzLtMKwDSQLBVSBti27dJajkcSD2RJODO3wtkOOMz/tMSJJYAxMA5dmsL0IfubQAAAAASUVORK5CYII=);
*background-image:url(../image/arrow-right-white.gif); /* IE 6+7 don't do DATA: URIs */
background-repeat:no-repeat;
background-position:5px 50%;
*background-position:5px 4px; /* IE 6 again */
}
a.sm2_button:hover,
a.sm2_button.sm2_playing,
a.sm2_button.sm2_playing:hover {
background-color:#cc3333;
}
a.sm2_button.sm2_playing,
a.sm2_button.sm2_playing:hover {
-moz-transform:rotate(90deg);
-webkit-transform:rotate(90deg);
-ms-transform:rotate(90deg);
}
a.sm2_button.sm2_paused,
a.sm2_button.sm2_paused:hover {
background-color:#666;
}