I seem to have an issue with doctype and generated links.
Code in base controller. As you can see I define html5 as doctype.
public function initialize()
{
// Set HTML header
$this->tag->setDoctype( Tag::HTML5 );
// Set default title
$this->tag->setTitle( "....... | " );
// Set various folders
.........
}
This is part of my main layout template. As you can see I use assets to insert the stylesheet and js file(s) in the footer.
{{ get_doctype() }}
<html lang="{{ config.locale.lang }}">
<head>
<meta charset="{{ config.locale.charset }}">
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<meta name="viewport" content="width=device-width, initial-scale=1, minimum-scale=1, maximum-scale=1">
<meta http-equiv="Content-Type" content="text/html; charset={{ config.locale.charset }}">
<link rel="shortcut icon" type="image/x-icon" href="../../public/favicon.ico">
{# Get the page title #}
{{ get_title() }}
{# Set the stylesheet #}
{{ assets.outputCss( 'stylesheet' ) }}
<!--[if lt IE 9]>
{{ stylesheet_link( "https://oss.maxcdn.com/libs/html5shiv/3.7.0/html5shiv.js" ) }}
{{ stylesheet_link( "https://oss.maxcdn.com/libs/respond.js/1.3.0/respond.min.js" ) }}
<![endif]-->
</head>
The resulting html is as follows. Doctype is set to html, so this should be html 5 complient. Yet the link for the stylesheet is missing the / at the end, just before the closing >
<!DOCTYPE html>
<html lang="nl">
<head>
<meta charset="UTF-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<meta name="viewport" content="width=device-width, initial-scale=1, minimum-scale=1, maximum-scale=1">
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<link rel="shortcut icon" type="image/x-icon" href="../../public/favicon.ico" />
<title>....... | </title>
<link rel="stylesheet" type="text/css" href="/css/backend-news.css">
<!--[if lt IE 9]>
<link rel="stylesheet" type="text/css" href="https://oss.maxcdn.com/libs/html5shiv/3.7.0/html5shiv.js">
<link rel="stylesheet" type="text/css" href="https://oss.maxcdn.com/libs/respond.js/1.3.0/respond.min.js">
<![endif]-->
</head>
In the firebug console I get the error message that my head is missing a </link>.
XML Parsing Error: mismatched tag. Expected: </link>.
Location: https://xxxxxxxx/backend/news/2/
Line Number 23, Column 5:
I have checked the code that renders the tag and it checks to see what doctype is used/defined and should render /> instead of just >.
Below is part of the file ' cphalcon/phalcon/tag.zep', line 1333 - 1340
/**
* Check if Doctype is XHTML
*/
if self::_documentType > self::HTML5 {
let code .= " />" . PHP_EOL;
} else {
let code .= ">" . PHP_EOL;
}
Eighter I found a bug or I'm doing something wrong. Eighter way I like to know. Any idea's ?