Форумы xBB | |||||
Форумы xBB > BBCode и прочие языки упрощенной разметки > Всякие фичи к библиотеке xBB для работы с BBCode Теги из раздела Text DecorationАвтор: Nutty. Последнее редактирование: 2011-11-16 14:06:17 Эти теги уже давно выкладовал но так как мне они нужны были в форме более ужатой я их переделал и добавил парочку других тегов тегов.Визуально всё выглядит так. Для полноценной работы вам потребуется не которая графика. Не обходимая графика. http://imgs.su/tmp/1321433753-590.jpg -> animarrow http://imgs.su/tmp/1321433802-590.jpg -> arrow http://imgs.su/tmp/1321433826-590.jpg -> diagonal http://imgs.su/tmp/1321433858-590.jpg -> pointindashed http://imgs.su/tmp/1321433887-590.jpg -> underline http://imgs.su/tmp/1321433918-590.jpg -> wavygreen http://imgs.su/tmp/1321433918-590.jpg -> wavyred Стиль: также в нём не забудте подправить url адреса. CSS span#bb_text_decoration{ line-height: 1.5; } .bb_text_overline{ text-decoration: overline; } .bb_text_double{ border-bottom: 3px double; } .bb_text_dashed{ border-bottom: 1px dashed; } .bb_text_dotted{ border-bottom: 1px dotted; } .bb_text_blink{ text-decoration: blink; } .bb_text_wavyred{ background: url('wavyred.gif') repeat-x 100% 100%; white-space: nowrap; padding-bottom: 1px; } .bb_text_wavygreen{ background: url('wavygreen.gif') repeat-x 100% 100%; white-space: nowrap; padding-bottom: 1px; } .bb_text_modernunderline{ background: url('underline.gif') repeat-x 100% 100%; white-space: nowrap; padding-bottom: 1px; } .bb_text_diagonal{ background: url('diagonal.gif') repeat-x 100% 100%; white-space: nowrap; padding-bottom: 1px; } .bb_text_arrow{ background: url('arrow.gif') repeat-x 100% 100%; white-space: nowrap; padding-bottom: 1px; } .bb_text_animarrow{ background: url('animarrow.gif') repeat-x 100% 100%; white-space: nowrap; padding-bottom: 1px; } .bb_text_pointindashed{ background: url('pointindashed.gif') repeat-x 100% 100%; white-space: nowrap; padding-bottom: 1px; } .bb_text_indent{ display:inline; padding-left:20px; } Внимание!!! для тех кто не использовал прошлые теги сотрите алиасы старых тегов они просто вам не кчему) PHP
<? class Xbb_Tags_TextDecoration extends bbcode{ public $behaviour = 'span'; function get_html($tree = null){ $class = false; //Алиасы старой версии тегов для тех кто уже использовал прошлую версию, кто не использовал то лучше стереть. switch ($this->tag) { case 'o': $class = 'bb_text_overline'; break; case 'blink': $class = 'bb_text_blink'; break; case 'double': $class = 'bb_text_double'; break; case 'dashed': $class = 'bb_text_dashed'; break; case 'wavygreen': $class = 'bb_text_wavygreen'; break; case 'wavyred': $class = 'bb_text_wavyred'; break; case 'indent': $class = 'bb_text_indent'; break; } //END Алиасов if (isset($this -> attrib['decor'])) { $attr = $this -> attrib['decor']; //Условие на крайний случай в друг кто то захочет вписать какуе то фигню и сделает XSS отаку) в случае не удачи HTML тег будет опущен а содержание тега decor будет отображено как текст. if($attr === 'overline' OR $attr === 'blink' OR $attr === 'double' OR $attr === 'dashed' OR $attr === 'dotted' OR $attr === 'wavyred' OR $attr === 'wavygreen' OR $attr === 'modernunderline' OR $attr === 'diagonal' OR $attr === 'arrow' OR $attr === 'animarrow' OR $attr === 'pointindashed' OR $attr === 'indent'){ $class = 'bb_text_'.$attr; } } return ($class ? '<span id="bb_text_decoration" class="'.$class.'">'.parent::get_html().'</span>' : parent::get_html()); } } PHP 'decor' => 'Xbb_Tags_TextDecoration', Забыл сказать что тег [decor] понимает стиль декора как его параметр. случае не установки параметра или ошибочном параметре тег [decor] будет опущен а его содержимое просто отображено. тег работает так) [decor=arrow]Декорирующий текст[/decor] так же использовать его остальные стили. 2 комментария
Дополнение тег [q] но с стилями. |
© 2007-2012, Дмитрий Скоробогатов.
Разрешается воспроизводить, распространять и/или изменять материалы сайта
в соответствии с условиями GNU Free Documentation License,
версии 1.2 или любой более поздней версии, опубликованной FSF,
если только иное не указано в самих материалах.