Шаблон:Doc/styles.css: различия между версиями

Самозащитой является применение лицом средств противодействия, которые не запрещены законом и не противоречат моральным принципам общества
Перейти к навигации Перейти к поиску
Метка: отменено
 
(не показаны 2 промежуточные версии этого же участника)
Строка 1: Строка 1:
use Wikimedia\CSS\Parser\Parser;
<templatestyles src="Шаблон:Doc/styles.css" />
use Wikimedia\CSS\Sanitizer\StylesheetSanitizer;
 
/** Parse a stylesheet from a string **/
 
$parser = Parser::newFromString( $cssText );
$stylesheet = $parser->parseStylesheet();
 
/** Report any parser errors **/
 
foreach ( $parser->getParseErrors() as list( $code, $line, $pos ) ) {
// $code is a string that should be suitable as a key for an i18n library.
// See errors.md for details.
$error = lookupI18nMessage( "css-parse-error-$code" );
echo "Parse error: $error at line $line character $pos\n";
}
 
/** Apply sanitization to the stylesheet **/
 
// If you need to customize the defaults, copy the code of this method and
// modify it.
$sanitizer = StylesheetSanitizer::newDefault();
$newStylesheet = $sanitizer->sanitize( $stylesheet );
 
/** Report any sanitizer errors **/
 
foreach ( $sanitizer->getSanitizationErrors() as list( $code, $line, $pos ) ) {
// $code is a string that should be suitable as a key for an i18n library.
// See errors.md for details.
$error = lookupI18nMessage( "css-sanitization-error-$code" );
echo "Sanitization error: $error at line $line character $pos\n";
}
 
/** Convert the sanitized stylesheet back to text **/
 
$newText = (string)$newStylesheet;
 
// Or if you'd rather have it minified too
$minifiedText = Wikimedia\CSS\Util::stringify( $newStylesheet, [ 'minify' => true ] );

Текущая версия на 13:27, 25 января 2022

Для использования в TemplateStyles у страницы Шаблон:Doc/styles.css должна быть модель содержания "Sanitized CSS" (текущая модель: "вики-текст").