create or replace package body x_tag_b is procedure tags is begin src_b.header; x.p('

', 'note: open/close/pair/single'); x.o(''); x.p('

', 'open/close tag demo'); x.s(' '); x.c(''); end; procedure tag_attr is begin src_b.header; x.p('

', 'note: id/classes/nv attr/bool attr'); x.p('', '#id demo'); x.p('', '.class demo'); x.p('', '.classes demo'); x.p('', '#id and .classes combined demo'); x.p('

', 'single attr-value pair demo, " is not required to wrap value'); x.p('

', 'multiple attr-value pair(separated by ",") demo'); x.p('

', 'html5 data-xxx attr(prefixed with "^") demo'); x.p('

', 'boolean attr demo'); x.p('

', 'boolean attrs demo'); x.p('', 'all in one demo'); end; procedure url_link is begin src_b.header; x.p('

', 'note: link/script/form/a/img/base'); x.b('', '^'); x.l('', '[bootstrap.css]'); x.j(''); x.t('', st(r.getc('x$pack'), r.getc('x$proc'))); x.t(''); x.p('', x.w('NORADLE')); x.p('', x.e('

some html

')); end; procedure bool_attr is begin src_b.header; x.l('', '[bootstrap.css]'); x.p('', 'info: b2c/checked/selected/disabled/readonly/defer/async'); x.j('