diff abcjs-midi.css @ 21:dbc7d00fcb7d midi-experiment

Try to add midi playback of sheet music
author Jonatan Werpers <jonatan@werpers.com>
date Wed, 01 Jul 2020 11:41:39 +0200
parents
children
line wrap: on
line diff
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/abcjs-midi.css	Wed Jul 01 11:41:39 2020 +0200
@@ -0,0 +1,166 @@
+/* Some basic CSS to make the MIDI controls in abcjs presentable. */
+
+.abcjs-inline-midi {
+	height: 26px;
+	padding: 0 5px;
+	border-radius: 3px;
+	color: #f4f4f4;
+	background-color: #424242;
+	display: flex;
+	align-items: center;
+	box-sizing: border-box;
+}
+
+.abcjs-inline-midi .abcjs-btn {
+	width: 28px;
+	height: 26px;
+	display: inline-block;
+	margin-right: 2px;
+	float: left;
+	padding: 0;
+
+	background: none;
+	font: normal normal normal 14px/1 FontAwesome;
+	font-size: 14px;
+	text-rendering: auto;
+	-webkit-font-smoothing: antialiased;
+	-moz-osx-font-smoothing: grayscale;
+	color: #f4f4f4;
+	border: 1px solid transparent;
+	box-sizing: border-box;
+}
+
+.fa5 .abcjs-inline-midi .abcjs-btn {
+	font-family: "Font Awesome 5 Free";
+	font-weight: 900;
+}
+.abcjs-inline-midi .abcjs-btn:hover {
+	color: #cccccc;
+}
+
+.abcjs-inline-midi .abcjs-midi-selection:before {
+	content: "\f07e"; /* fa-arrows-h [&#xf07e;] */
+}
+
+.abcjs-inline-midi .abcjs-midi-selection.abcjs-pushed {
+	border: 1px solid #cccccc;
+	background-color: #666666;
+	box-sizing: border-box;
+}
+
+.abcjs-inline-midi .abcjs-midi-loop:before {
+	content: "\f021"; /*   fa-refresh [&#xf021;] */
+}
+
+.abcjs-inline-midi .abcjs-midi-loop.abcjs-pushed {
+	border: 1px solid #cccccc;
+	background-color: #666666;
+	box-sizing: border-box;
+}
+
+.abcjs-inline-midi .abcjs-midi-reset:before {
+	content: "\f048"; /*   fa-step-backward [&#xf048;] */
+}
+
+.abcjs-inline-midi .abcjs-midi-reset.abcjs-pushed {
+	border: 1px solid #cccccc;
+	background-color: #666666;
+	box-sizing: border-box;
+}
+
+.abcjs-inline-midi .abcjs-midi-start:before {
+	content: "\f04b"; /*   fa-play [&#xf04b;]    fa-pause [&#xf04c;] */
+}
+
+.abcjs-inline-midi .abcjs-midi-start.abcjs-pushed:before {
+	content: "\f04c"; /*   fa-play [&#xf04b;]    fa-pause [&#xf04c;] */
+}
+
+.abcjs-inline-midi .abcjs-midi-start.abcjs-loading {
+	outline: none;
+	animation: a 1s infinite steps(8);
+}
+
+.abcjs-inline-midi .abcjs-midi-start.abcjs-loading:before {
+	content: "\f110"; /*   fa-loading */
+}
+
+.abcjs-inline-midi .abcjs-midi-progress-background {
+	background-color: #424242;
+	height: 10px;
+	border-radius: 5px;
+	border: 2px solid #cccccc;
+	margin: 0 8px 0 15px;
+	position: relative;
+	flex: 1;
+	padding: 0;
+	box-sizing: border-box;
+}
+
+.abcjs-inline-midi .abcjs-midi-progress-indicator {
+	width: 20px;
+	margin-left: -10px; /* half of the width */
+	height: 14px;
+	background-color: #f4f4f4;
+	position: absolute;
+	display: inline-block;
+	border-radius: 6px;
+	top: -4px;
+	left: 0;
+	box-sizing: border-box;
+}
+
+.abcjs-inline-midi .abcjs-midi-clock, .abcjs-inline-midi .abcjs-midi-post {
+	margin-left: 4px;
+	margin-top: 0;
+	display: inline-block;
+	font-family: sans-serif;
+	font-size: 16px;
+	box-sizing: border-box;
+}
+
+.abcjs-inline-midi .abcjs-midi-pre {
+	display: inline-block;
+	box-sizing: border-box;
+}
+
+.abcjs-inline-midi .abcjs-tempo-wrapper {
+	float: right;
+	font-size: 10px;
+	display: inline-block;
+	color: #f4f4f4;
+	box-sizing: border-box;
+}
+
+.abcjs-inline-midi .abcjs-midi-tempo {
+	border-radius: 2px;
+	border: none;
+	margin: 1px 2px 0 4px;
+	width: 32px;
+	padding-left: 2px;
+	box-sizing: border-box;
+}
+
+/* Adding the class "abcjs-large" will make the control easier on a touch device. */
+.abcjs-large .abcjs-inline-midi {
+	height: 52px;
+}
+.abcjs-large .abcjs-btn {
+	width: 56px;
+	height: 52px;
+	font-size: 28px;
+}
+.abcjs-large .abcjs-midi-progress-background {
+	height: 20px;
+	border: 4px solid #cccccc;
+}
+.abcjs-large .abcjs-midi-progress-indicator {
+	height: 28px;
+	top: -8px;
+	width: 40px;
+}
+.abcjs-large .abcjs-midi-clock {
+	font-size: 32px;
+	margin-right: 10px;
+	margin-left: 10px;
+}