#include "html.h" #include "el_link.h" #include "document.h" litehtml::el_link::el_link(const std::shared_ptr& doc) : litehtml::html_tag(doc) { } void litehtml::el_link::parse_attributes() { bool processed = false; document::ptr doc = get_document(); const char* rel = get_attr("rel"); if(rel && !strcmp(rel, "stylesheet")) { const char* media = get_attr("media"); const char* href = get_attr("href"); if(href && href[0]) { string css_text; string css_baseurl; doc->container()->import_css(css_text, href, css_baseurl); if(!css_text.empty()) { doc->add_stylesheet(css_text.c_str(), css_baseurl.c_str(), media); processed = true; } } } if(!processed) { doc->container()->link(doc, shared_from_this()); } }