NAME
Tags::HTML::Page::Begin - Tags helper for HTML page begin.
SYNOPSIS
use Tags::HTML::Page::Begin;
my $obj = Tags::HTML::Page::Begin->new(%params);
$obj->process;
METHODS
new
my $obj = Tags::HTML::Page::Begin->new(%params);
Constructor.
css
'CSS::Struct::Output' object for process_css processing.
It's required.
Default value is undef.
doctype
Document doctype string.
Default value is '<!DOCTYPE html>'.
lang
Hash with language information for output. Keys are: 'title'.
Default value is reference to hash with these value: 'title' => 'Page title'
tags
'Tags::Output' object.
It's required.
Default value is undef.
process
$obj->process;
Process Tags structure for output.
Returns undef.
ERRORS
new():
Parameter 'css' must be a 'CSS::Struct::Output::*' class.
Parameter 'tags' must be a 'Tags::Output::*' class.
From Class::Utils::set_params():
Unknown parameter '%s'.
EXAMPLE1
use strict;
use warnings;
use CSS::Struct::Output::Indent;
use Tags::HTML::Page::Begin;
use Tags::HTML::Page::End;
use Tags::Output::Indent;
# Object.
my $tags = Tags::Output::Indent->new(
'preserved' => ['style'],
'xml' => 1,
);
my $css = CSS::Struct::Output::Indent->new;
my $begin = Tags::HTML::Page::Begin->new(
'css' => $css,
'tags' => $tags,
);
my $end = Tags::HTML::Page::End->new(
'tags' => $tags,
);
# Process page
$css->put(
['s', 'div'],
['d', 'color', 'red'],
['d', 'background-color', 'black'],
['e'],
);
$begin->process;
$tags->put(
['b', 'div'],
['d', 'Hello world!'],
['e', 'div'],
);
$end->process;
# Print out.
print $tags->flush;
# Output:
# <!DOCTYPE html>
# <html>
# <head>
# <meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
# <title>
# Page title
# </title>
# <style type="text/css">
# div {
# color: red;
# background-color: black;
# }
# </style>
# </head>
# <body>
# <div>
# Hello world!
# </div>
# </body>
# </html>
DEPENDENCIES
Class::Utils, Error::Pure, Readonly.
SEE ALSO
- Tags::HTML::Page::End
-
Tags helper for HTML page end.
REPOSITORY
https://github.com/michal-josef-spacek/Tags-HTML-Page-Begin
AUTHOR
Michal Josef Špaček mailto:skim@cpan.org
LICENSE AND COPYRIGHT
© Michal Josef Špaček 2020
BSD 2-Clause License
VERSION
0.05