Я пытаюсь найти хороший способ хранения текстовых текстов с синхронизированными гитарными аккордами. При отображении, я хотел бы видеть, что лирика была переведена в два раза с аккордами в строке "пробелы" над соответствующими словами. Это для моей личной лирической книги, поэтому в конечном итоге рендеринг будет чаще всего на мертвых деревьях против экрана, но это может измениться в конце концов. Я решил, что дам Markdown выстрел и смог бы получить следующий формат "своего рода", работающий в сочетании с некоторым CSS, чтобы теги <a> отображали как квазиверхрифмы. Мне нравится, как сработал тег <a> , потому что у меня могут быть ссылки ссылки внизу файла для любых включенных аккордов:
#Supertramp - Give A Little Bit
[A]
[D]Give a little bit[A][] [D]
Give a little bit[G] of your[A] love to me[G][][A]
[D]: http://guitar.about.com/library/blchord_dmajor.htm "D major"
[G]: http://guitar.about.com/library/blchord_gmajor.htm "G major"
[A]: http://guitar.about.com/library/blchord_amajor.htm "A major"
CSS и преобразованная уценка здесь: http://jsfiddle.net/654ct/13/
h1 {
font-family: Arial;
font-size: 2em;
margin-bottom: 1em;
}
p {
line-height:1em;
margin-bottom:1.1em;
font-family: Arial;
}
a {
position: relative;
top: -1em;
display:inline-block;
width: 0;
overflow:visible;
color:#00F;
font-weight:bold;
font-family: Arial;
text-decoration: none;
}
Я заимствовал большую часть CSS отсюда: Стили текста, чтобы он отображался над линией (для аккордов над текстом) Я пишу новую тему, так как это в основном является призывом помочь с уценкой.
Приятная вещь в этом формате до сих пор заключается в том, что аккорды могут быть написаны "inline" с лирикой, поэтому слова и музыка остаются в синхронизации, независимо от того, какой шрифт используется. Кроме того, я получаю дополнительную выгоду, что сама пометка достаточно читаема.
Единственные проблемы:
- Если есть два аккорда, которые нужно воспроизводить без каких-либо слов между ними, символы аккордов "перекрываются" друг с другом при визуализации в HTML. (Я считаю, что это вызвано шириной: 0, но это необходимо, насколько я могу судить, чтобы устранить пробелы в тексте, когда происходят изменения аккордов.)
- В том же сценарии все аккорды, кроме последнего, должны иметь [] после буквы аккорда, иначе второй аккорд будет интерпретироваться как описание первого. Это делает уценку немного более занятой, чем хотелось бы.
Есть ли хороший способ решить одну или обе эти проблемы с помощью CSS или путем изменения уценки? Если нет, то кто-то знает совершенно другую альтернативу, кроме написания моего собственного языка разметки для гитарного аккорда для этого? (Даже если бы я написал свой язык разметки для этого, мне все равно понадобилась бы помощь с проблемой 1.) Я знаю формат вкладок, и я ищу что-то значительно менее сложное, поскольку все, что мне нужно, это напоминание о том, когда каждый аккорд появляется не на явной диаграмме, где должны быть мои пальцы.
Спасибо!