简体   繁体   中英

Flask Jinja2 template is not rendering style tag?

I am making (learning) a simple web app using flask. I am not using the templates for css input. I'm directly coding the css using the 'style' tag in the jinja2 template. But the style tag is not working. Even though using inspect element in chrome i can see the style tag being rendered?

index.html code, which is to be rendered

{% extends "base.html" %}

{% block style %}
body{
line-height:1.5;
background-color:gray;
font-size:10px;
}   

{% endblock %}

base.html

<html>
<head>

{% if title %}
<title>{{ title }}</title>
{% else %}
<title>Welcome to Micro-blogger Index page!</title>
{% endif %}

<style>
{% block style %}{% endblock %}
</style>
</head>

<body>
<h1><a href='/'>Index</a>
<br/>
{% block content %}{% endblock %}
</body>
</html>

Edit: By not working i mean like the background color is still white and font size & line-height are not as coded.

Edit:When I put the css element in the base.html , the rendering works. But when i pass it through variable in the index.html file the prev. mentioned thing happens. Yeah i could link a stylesheet or pass the css element from the base.html template , but what would i do in a scenario (i hope i don't have to , maybe for debug purposes) when i have two html docs both inheriting from same base.html but need to have different css attributes (like different background color etc.)

What is the need to add style using the ninja template custom tags. Instead you can directly use the style tag. Here is the code.

<style>
body{
line-height:1.5;
background-color:gray;
font-size:10px;
}  
</style>

and you can directly place it wherever you want.

The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM