Teil 19 Flask.
This commit is contained in:
		@@ -1,16 +0,0 @@
 | 
				
			|||||||
#! /usr/bin/python3
 | 
					 | 
				
			||||||
#encoding: utf-8
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
from flask import Flask
 | 
					 | 
				
			||||||
app = Flask(__name__)
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
@app.route("/")
 | 
					 | 
				
			||||||
def hello():
 | 
					 | 
				
			||||||
    return "Hello World!"
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
@app.route('/test')
 | 
					 | 
				
			||||||
def test():
 | 
					 | 
				
			||||||
    return 'Hello Test'
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
app.run(host='0.0.0.0',port=8082)
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
@@ -1,14 +0,0 @@
 | 
				
			|||||||
from flask import Flask,render_template
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
app = Flask(__name__)
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
@app.route('/')
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
def index():
 | 
					 | 
				
			||||||
  return render_template('index.html')
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
if __name__ == '__main__':
 | 
					 | 
				
			||||||
  app.run(host='0.0.0.0',port=8085, debug=True)
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
							
								
								
									
										0
									
								
								flask/.gitignore → teil19/.gitignore
									
									
									
									
										vendored
									
									
								
							
							
						
						
									
										0
									
								
								flask/.gitignore → teil19/.gitignore
									
									
									
									
										vendored
									
									
								
							
							
								
								
									
										
											BIN
										
									
								
								teil19/fib/__pycache__/app.cpython-39.pyc
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										
											BIN
										
									
								
								teil19/fib/__pycache__/app.cpython-39.pyc
									
									
									
									
									
										Normal file
									
								
							
										
											Binary file not shown.
										
									
								
							
							
								
								
									
										
											BIN
										
									
								
								teil19/fib/__pycache__/fib_gen.cpython-39.pyc
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										
											BIN
										
									
								
								teil19/fib/__pycache__/fib_gen.cpython-39.pyc
									
									
									
									
									
										Normal file
									
								
							
										
											Binary file not shown.
										
									
								
							
							
								
								
									
										45
									
								
								teil19/fib/app.py
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										45
									
								
								teil19/fib/app.py
									
									
									
									
									
										Normal file
									
								
							@@ -0,0 +1,45 @@
 | 
				
			|||||||
 | 
					from flask import Flask,render_template,request
 | 
				
			||||||
 | 
					from fib_gen import fib_generator
 | 
				
			||||||
 | 
					import logging
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					logging.basicConfig( format='%(asctime)-15s [%(levelname)s] %(funcName)s: %(message)s', level=logging.DEBUG)
 | 
				
			||||||
 | 
					app = Flask(__name__)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					@app.route('/')
 | 
				
			||||||
 | 
					def index():
 | 
				
			||||||
 | 
					  return render_template('index.html')
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					@app.route('/fib',methods=['GET','POST'])
 | 
				
			||||||
 | 
					def fib():
 | 
				
			||||||
 | 
					  fibg = fib_generator()
 | 
				
			||||||
 | 
					  result = ''
 | 
				
			||||||
 | 
					  logging.debug(f'request.method={request.method}')
 | 
				
			||||||
 | 
					  if request.method == 'POST':
 | 
				
			||||||
 | 
					     element = request.form['element']
 | 
				
			||||||
 | 
					     
 | 
				
			||||||
 | 
					     logging.debug(f'berechne Element:{element}')
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					     n= int(element)
 | 
				
			||||||
 | 
					     #formel= str(n-2) + '+' + str(n-1)
 | 
				
			||||||
 | 
					     formel = '' # Berechnungsformel initialisieren.
 | 
				
			||||||
 | 
					     if element != None:
 | 
				
			||||||
 | 
					       for i in range(n+1):
 | 
				
			||||||
 | 
					         fib = next(fibg)
 | 
				
			||||||
 | 
					         if i == n-2: # fib(n-2) zur Berechnungsformel dazu
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					           formel += str(fib)
 | 
				
			||||||
 | 
					         if i == n-1: # fib(n-1) mit + Zeichen zur Berechnungsformel dazu
 | 
				
			||||||
 | 
					           formel += '+' + str(fib)
 | 
				
			||||||
 | 
					         
 | 
				
			||||||
 | 
					       logging.debug(f'Fibonacci-Zahl: {fib}')
 | 
				
			||||||
 | 
					       logging.debug(f'formel={formel}')
 | 
				
			||||||
 | 
					       result=str(fib)
 | 
				
			||||||
 | 
					  elif request.method == 'GET':
 | 
				
			||||||
 | 
					    logging.debug('GET-Request')
 | 
				
			||||||
 | 
					  return render_template('index.html', result=result,formel=formel)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					if __name__ == '__main__':
 | 
				
			||||||
 | 
					  app.run(host='0.0.0.0',port=8085, debug=True)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
							
								
								
									
										12
									
								
								teil19/fib/fib_gen.py
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										12
									
								
								teil19/fib/fib_gen.py
									
									
									
									
									
										Normal file
									
								
							@@ -0,0 +1,12 @@
 | 
				
			|||||||
 | 
					import sys
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					def fib_generator():
 | 
				
			||||||
 | 
					 a,b = 0,1
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					 while True:
 | 
				
			||||||
 | 
					   yield a
 | 
				
			||||||
 | 
					   a,b = b, a+b
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
							
								
								
									
										26
									
								
								teil19/fib/templates/index.html
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										26
									
								
								teil19/fib/templates/index.html
									
									
									
									
									
										Normal file
									
								
							@@ -0,0 +1,26 @@
 | 
				
			|||||||
 | 
					<!DOCTYPE html>
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					<html lang='en'>
 | 
				
			||||||
 | 
					<head>
 | 
				
			||||||
 | 
					  <meta charset='utf-8' />
 | 
				
			||||||
 | 
					  <link href='static/css/skeleton.css' rel='stylesheet' type='text/css' />
 | 
				
			||||||
 | 
					  <title>Fibonacci Zahlen berechnen</title>
 | 
				
			||||||
 | 
					</head>
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					<body>
 | 
				
			||||||
 | 
					 <h2>Fibonacci Generator </h2
 | 
				
			||||||
 | 
					 <!--FORM -->
 | 
				
			||||||
 | 
					 <form action='fib' method='post'>
 | 
				
			||||||
 | 
					    <label> Folgen Element</label>
 | 
				
			||||||
 | 
					    <input 
 | 
				
			||||||
 | 
					       type='text'
 | 
				
			||||||
 | 
					       placeholder='Fibonacci Element'
 | 
				
			||||||
 | 
					       name='element'
 | 
				
			||||||
 | 
					       value='{{request.form.element}}'
 | 
				
			||||||
 | 
					    </input><br />
 | 
				
			||||||
 | 
					    <button type='submit'>Berechnen</button>
 | 
				
			||||||
 | 
					    <p>Formel: {{formel}} </p>
 | 
				
			||||||
 | 
					    <p>Fibonacci-Zahl: {{result}} </p>
 | 
				
			||||||
 | 
					 </form>
 | 
				
			||||||
 | 
					</body>
 | 
				
			||||||
 | 
					</html>
 | 
				
			||||||
@@ -8,6 +8,11 @@ app = Flask(__name__)
 | 
				
			|||||||
def index():
 | 
					def index():
 | 
				
			||||||
  return 'Ein erstes Hallo'
 | 
					  return 'Ein erstes Hallo'
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					@app.route('/second')
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					def second():
 | 
				
			||||||
 | 
					  return '<b>Ein zweites Hallo</b>'
 | 
				
			||||||
 | 
					
 | 
				
			||||||
if __name__ == '__main__':
 | 
					if __name__ == '__main__':
 | 
				
			||||||
  app.run(host='0.0.0.0',port=8085, debug=True)
 | 
					  app.run(host='0.0.0.0',port=8085, debug=True)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
							
								
								
									
										28
									
								
								teil19/renderhtml/render.py
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										28
									
								
								teil19/renderhtml/render.py
									
									
									
									
									
										Normal file
									
								
							@@ -0,0 +1,28 @@
 | 
				
			|||||||
 | 
					from flask import Flask,render_template
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					app = Flask(__name__)
 | 
				
			||||||
 | 
					zaehler = 0
 | 
				
			||||||
 | 
					@app.route('/')
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					def index():
 | 
				
			||||||
 | 
					  global zaehler 
 | 
				
			||||||
 | 
					  zaehler=zaehler +1
 | 
				
			||||||
 | 
					  return render_template('index.html', counter=zaehler)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					schueler = [
 | 
				
			||||||
 | 
					    {'name':'Simpson','vorname': 'Bart'},
 | 
				
			||||||
 | 
					    {'name':'Simpson','vorname':'Lisa'},
 | 
				
			||||||
 | 
					    {'name':'van Houten','vorname':'Milhouse'},
 | 
				
			||||||
 | 
					    {'name':'Wiggum','vorname':'Ralph'},
 | 
				
			||||||
 | 
					    {'name':'Jones','vorname':'Jimbo'}
 | 
				
			||||||
 | 
					]
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					@app.route('/students')
 | 
				
			||||||
 | 
					def students():
 | 
				
			||||||
 | 
					  return render_template('students.html',schueler=schueler)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					if __name__ == '__main__':
 | 
				
			||||||
 | 
					  app.run(host='0.0.0.0',port=8085, debug=True)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
							
								
								
									
										427
									
								
								teil19/renderhtml/static/css/normalize.css
									
									
									
									
										vendored
									
									
										Normal file
									
								
							
							
						
						
									
										427
									
								
								teil19/renderhtml/static/css/normalize.css
									
									
									
									
										vendored
									
									
										Normal file
									
								
							@@ -0,0 +1,427 @@
 | 
				
			|||||||
 | 
					/*! normalize.css v3.0.2 | MIT License | git.io/normalize */
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					/**
 | 
				
			||||||
 | 
					 * 1. Set default font family to sans-serif.
 | 
				
			||||||
 | 
					 * 2. Prevent iOS text size adjust after orientation change, without disabling
 | 
				
			||||||
 | 
					 *    user zoom.
 | 
				
			||||||
 | 
					 */
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					html {
 | 
				
			||||||
 | 
					  font-family: sans-serif; /* 1 */
 | 
				
			||||||
 | 
					  -ms-text-size-adjust: 100%; /* 2 */
 | 
				
			||||||
 | 
					  -webkit-text-size-adjust: 100%; /* 2 */
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					/**
 | 
				
			||||||
 | 
					 * Remove default margin.
 | 
				
			||||||
 | 
					 */
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					body {
 | 
				
			||||||
 | 
					  margin: 0;
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					/* HTML5 display definitions
 | 
				
			||||||
 | 
					   ========================================================================== */
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					/**
 | 
				
			||||||
 | 
					 * Correct `block` display not defined for any HTML5 element in IE 8/9.
 | 
				
			||||||
 | 
					 * Correct `block` display not defined for `details` or `summary` in IE 10/11
 | 
				
			||||||
 | 
					 * and Firefox.
 | 
				
			||||||
 | 
					 * Correct `block` display not defined for `main` in IE 11.
 | 
				
			||||||
 | 
					 */
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					article,
 | 
				
			||||||
 | 
					aside,
 | 
				
			||||||
 | 
					details,
 | 
				
			||||||
 | 
					figcaption,
 | 
				
			||||||
 | 
					figure,
 | 
				
			||||||
 | 
					footer,
 | 
				
			||||||
 | 
					header,
 | 
				
			||||||
 | 
					hgroup,
 | 
				
			||||||
 | 
					main,
 | 
				
			||||||
 | 
					menu,
 | 
				
			||||||
 | 
					nav,
 | 
				
			||||||
 | 
					section,
 | 
				
			||||||
 | 
					summary {
 | 
				
			||||||
 | 
					  display: block;
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					/**
 | 
				
			||||||
 | 
					 * 1. Correct `inline-block` display not defined in IE 8/9.
 | 
				
			||||||
 | 
					 * 2. Normalize vertical alignment of `progress` in Chrome, Firefox, and Opera.
 | 
				
			||||||
 | 
					 */
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					audio,
 | 
				
			||||||
 | 
					canvas,
 | 
				
			||||||
 | 
					progress,
 | 
				
			||||||
 | 
					video {
 | 
				
			||||||
 | 
					  display: inline-block; /* 1 */
 | 
				
			||||||
 | 
					  vertical-align: baseline; /* 2 */
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					/**
 | 
				
			||||||
 | 
					 * Prevent modern browsers from displaying `audio` without controls.
 | 
				
			||||||
 | 
					 * Remove excess height in iOS 5 devices.
 | 
				
			||||||
 | 
					 */
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					audio:not([controls]) {
 | 
				
			||||||
 | 
					  display: none;
 | 
				
			||||||
 | 
					  height: 0;
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					/**
 | 
				
			||||||
 | 
					 * Address `[hidden]` styling not present in IE 8/9/10.
 | 
				
			||||||
 | 
					 * Hide the `template` element in IE 8/9/11, Safari, and Firefox < 22.
 | 
				
			||||||
 | 
					 */
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					[hidden],
 | 
				
			||||||
 | 
					template {
 | 
				
			||||||
 | 
					  display: none;
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					/* Links
 | 
				
			||||||
 | 
					   ========================================================================== */
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					/**
 | 
				
			||||||
 | 
					 * Remove the gray background color from active links in IE 10.
 | 
				
			||||||
 | 
					 */
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					a {
 | 
				
			||||||
 | 
					  background-color: transparent;
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					/**
 | 
				
			||||||
 | 
					 * Improve readability when focused and also mouse hovered in all browsers.
 | 
				
			||||||
 | 
					 */
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					a:active,
 | 
				
			||||||
 | 
					a:hover {
 | 
				
			||||||
 | 
					  outline: 0;
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					/* Text-level semantics
 | 
				
			||||||
 | 
					   ========================================================================== */
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					/**
 | 
				
			||||||
 | 
					 * Address styling not present in IE 8/9/10/11, Safari, and Chrome.
 | 
				
			||||||
 | 
					 */
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					abbr[title] {
 | 
				
			||||||
 | 
					  border-bottom: 1px dotted;
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					/**
 | 
				
			||||||
 | 
					 * Address style set to `bolder` in Firefox 4+, Safari, and Chrome.
 | 
				
			||||||
 | 
					 */
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					b,
 | 
				
			||||||
 | 
					strong {
 | 
				
			||||||
 | 
					  font-weight: bold;
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					/**
 | 
				
			||||||
 | 
					 * Address styling not present in Safari and Chrome.
 | 
				
			||||||
 | 
					 */
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					dfn {
 | 
				
			||||||
 | 
					  font-style: italic;
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					/**
 | 
				
			||||||
 | 
					 * Address variable `h1` font-size and margin within `section` and `article`
 | 
				
			||||||
 | 
					 * contexts in Firefox 4+, Safari, and Chrome.
 | 
				
			||||||
 | 
					 */
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					h1 {
 | 
				
			||||||
 | 
					  font-size: 2em;
 | 
				
			||||||
 | 
					  margin: 0.67em 0;
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					/**
 | 
				
			||||||
 | 
					 * Address styling not present in IE 8/9.
 | 
				
			||||||
 | 
					 */
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					mark {
 | 
				
			||||||
 | 
					  background: #ff0;
 | 
				
			||||||
 | 
					  color: #000;
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					/**
 | 
				
			||||||
 | 
					 * Address inconsistent and variable font size in all browsers.
 | 
				
			||||||
 | 
					 */
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					small {
 | 
				
			||||||
 | 
					  font-size: 80%;
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					/**
 | 
				
			||||||
 | 
					 * Prevent `sub` and `sup` affecting `line-height` in all browsers.
 | 
				
			||||||
 | 
					 */
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					sub,
 | 
				
			||||||
 | 
					sup {
 | 
				
			||||||
 | 
					  font-size: 75%;
 | 
				
			||||||
 | 
					  line-height: 0;
 | 
				
			||||||
 | 
					  position: relative;
 | 
				
			||||||
 | 
					  vertical-align: baseline;
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					sup {
 | 
				
			||||||
 | 
					  top: -0.5em;
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					sub {
 | 
				
			||||||
 | 
					  bottom: -0.25em;
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					/* Embedded content
 | 
				
			||||||
 | 
					   ========================================================================== */
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					/**
 | 
				
			||||||
 | 
					 * Remove border when inside `a` element in IE 8/9/10.
 | 
				
			||||||
 | 
					 */
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					img {
 | 
				
			||||||
 | 
					  border: 0;
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					/**
 | 
				
			||||||
 | 
					 * Correct overflow not hidden in IE 9/10/11.
 | 
				
			||||||
 | 
					 */
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					svg:not(:root) {
 | 
				
			||||||
 | 
					  overflow: hidden;
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					/* Grouping content
 | 
				
			||||||
 | 
					   ========================================================================== */
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					/**
 | 
				
			||||||
 | 
					 * Address margin not present in IE 8/9 and Safari.
 | 
				
			||||||
 | 
					 */
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					figure {
 | 
				
			||||||
 | 
					  margin: 1em 40px;
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					/**
 | 
				
			||||||
 | 
					 * Address differences between Firefox and other browsers.
 | 
				
			||||||
 | 
					 */
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					hr {
 | 
				
			||||||
 | 
					  -moz-box-sizing: content-box;
 | 
				
			||||||
 | 
					  box-sizing: content-box;
 | 
				
			||||||
 | 
					  height: 0;
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					/**
 | 
				
			||||||
 | 
					 * Contain overflow in all browsers.
 | 
				
			||||||
 | 
					 */
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					pre {
 | 
				
			||||||
 | 
					  overflow: auto;
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					/**
 | 
				
			||||||
 | 
					 * Address odd `em`-unit font size rendering in all browsers.
 | 
				
			||||||
 | 
					 */
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					code,
 | 
				
			||||||
 | 
					kbd,
 | 
				
			||||||
 | 
					pre,
 | 
				
			||||||
 | 
					samp {
 | 
				
			||||||
 | 
					  font-family: monospace, monospace;
 | 
				
			||||||
 | 
					  font-size: 1em;
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					/* Forms
 | 
				
			||||||
 | 
					   ========================================================================== */
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					/**
 | 
				
			||||||
 | 
					 * Known limitation: by default, Chrome and Safari on OS X allow very limited
 | 
				
			||||||
 | 
					 * styling of `select`, unless a `border` property is set.
 | 
				
			||||||
 | 
					 */
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					/**
 | 
				
			||||||
 | 
					 * 1. Correct color not being inherited.
 | 
				
			||||||
 | 
					 *    Known issue: affects color of disabled elements.
 | 
				
			||||||
 | 
					 * 2. Correct font properties not being inherited.
 | 
				
			||||||
 | 
					 * 3. Address margins set differently in Firefox 4+, Safari, and Chrome.
 | 
				
			||||||
 | 
					 */
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					button,
 | 
				
			||||||
 | 
					input,
 | 
				
			||||||
 | 
					optgroup,
 | 
				
			||||||
 | 
					select,
 | 
				
			||||||
 | 
					textarea {
 | 
				
			||||||
 | 
					  color: inherit; /* 1 */
 | 
				
			||||||
 | 
					  font: inherit; /* 2 */
 | 
				
			||||||
 | 
					  margin: 0; /* 3 */
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					/**
 | 
				
			||||||
 | 
					 * Address `overflow` set to `hidden` in IE 8/9/10/11.
 | 
				
			||||||
 | 
					 */
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					button {
 | 
				
			||||||
 | 
					  overflow: visible;
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					/**
 | 
				
			||||||
 | 
					 * Address inconsistent `text-transform` inheritance for `button` and `select`.
 | 
				
			||||||
 | 
					 * All other form control elements do not inherit `text-transform` values.
 | 
				
			||||||
 | 
					 * Correct `button` style inheritance in Firefox, IE 8/9/10/11, and Opera.
 | 
				
			||||||
 | 
					 * Correct `select` style inheritance in Firefox.
 | 
				
			||||||
 | 
					 */
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					button,
 | 
				
			||||||
 | 
					select {
 | 
				
			||||||
 | 
					  text-transform: none;
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					/**
 | 
				
			||||||
 | 
					 * 1. Avoid the WebKit bug in Android 4.0.* where (2) destroys native `audio`
 | 
				
			||||||
 | 
					 *    and `video` controls.
 | 
				
			||||||
 | 
					 * 2. Correct inability to style clickable `input` types in iOS.
 | 
				
			||||||
 | 
					 * 3. Improve usability and consistency of cursor style between image-type
 | 
				
			||||||
 | 
					 *    `input` and others.
 | 
				
			||||||
 | 
					 */
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					button,
 | 
				
			||||||
 | 
					html input[type="button"], /* 1 */
 | 
				
			||||||
 | 
					input[type="reset"],
 | 
				
			||||||
 | 
					input[type="submit"] {
 | 
				
			||||||
 | 
					  -webkit-appearance: button; /* 2 */
 | 
				
			||||||
 | 
					  cursor: pointer; /* 3 */
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					/**
 | 
				
			||||||
 | 
					 * Re-set default cursor for disabled elements.
 | 
				
			||||||
 | 
					 */
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					button[disabled],
 | 
				
			||||||
 | 
					html input[disabled] {
 | 
				
			||||||
 | 
					  cursor: default;
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					/**
 | 
				
			||||||
 | 
					 * Remove inner padding and border in Firefox 4+.
 | 
				
			||||||
 | 
					 */
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					button::-moz-focus-inner,
 | 
				
			||||||
 | 
					input::-moz-focus-inner {
 | 
				
			||||||
 | 
					  border: 0;
 | 
				
			||||||
 | 
					  padding: 0;
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					/**
 | 
				
			||||||
 | 
					 * Address Firefox 4+ setting `line-height` on `input` using `!important` in
 | 
				
			||||||
 | 
					 * the UA stylesheet.
 | 
				
			||||||
 | 
					 */
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					input {
 | 
				
			||||||
 | 
					  line-height: normal;
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					/**
 | 
				
			||||||
 | 
					 * It's recommended that you don't attempt to style these elements.
 | 
				
			||||||
 | 
					 * Firefox's implementation doesn't respect box-sizing, padding, or width.
 | 
				
			||||||
 | 
					 *
 | 
				
			||||||
 | 
					 * 1. Address box sizing set to `content-box` in IE 8/9/10.
 | 
				
			||||||
 | 
					 * 2. Remove excess padding in IE 8/9/10.
 | 
				
			||||||
 | 
					 */
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					input[type="checkbox"],
 | 
				
			||||||
 | 
					input[type="radio"] {
 | 
				
			||||||
 | 
					  box-sizing: border-box; /* 1 */
 | 
				
			||||||
 | 
					  padding: 0; /* 2 */
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					/**
 | 
				
			||||||
 | 
					 * Fix the cursor style for Chrome's increment/decrement buttons. For certain
 | 
				
			||||||
 | 
					 * `font-size` values of the `input`, it causes the cursor style of the
 | 
				
			||||||
 | 
					 * decrement button to change from `default` to `text`.
 | 
				
			||||||
 | 
					 */
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					input[type="number"]::-webkit-inner-spin-button,
 | 
				
			||||||
 | 
					input[type="number"]::-webkit-outer-spin-button {
 | 
				
			||||||
 | 
					  height: auto;
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					/**
 | 
				
			||||||
 | 
					 * 1. Address `appearance` set to `searchfield` in Safari and Chrome.
 | 
				
			||||||
 | 
					 * 2. Address `box-sizing` set to `border-box` in Safari and Chrome
 | 
				
			||||||
 | 
					 *    (include `-moz` to future-proof).
 | 
				
			||||||
 | 
					 */
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					input[type="search"] {
 | 
				
			||||||
 | 
					  -webkit-appearance: textfield; /* 1 */
 | 
				
			||||||
 | 
					  -moz-box-sizing: content-box;
 | 
				
			||||||
 | 
					  -webkit-box-sizing: content-box; /* 2 */
 | 
				
			||||||
 | 
					  box-sizing: content-box;
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					/**
 | 
				
			||||||
 | 
					 * Remove inner padding and search cancel button in Safari and Chrome on OS X.
 | 
				
			||||||
 | 
					 * Safari (but not Chrome) clips the cancel button when the search input has
 | 
				
			||||||
 | 
					 * padding (and `textfield` appearance).
 | 
				
			||||||
 | 
					 */
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					input[type="search"]::-webkit-search-cancel-button,
 | 
				
			||||||
 | 
					input[type="search"]::-webkit-search-decoration {
 | 
				
			||||||
 | 
					  -webkit-appearance: none;
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					/**
 | 
				
			||||||
 | 
					 * Define consistent border, margin, and padding.
 | 
				
			||||||
 | 
					 */
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					fieldset {
 | 
				
			||||||
 | 
					  border: 1px solid #c0c0c0;
 | 
				
			||||||
 | 
					  margin: 0 2px;
 | 
				
			||||||
 | 
					  padding: 0.35em 0.625em 0.75em;
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					/**
 | 
				
			||||||
 | 
					 * 1. Correct `color` not being inherited in IE 8/9/10/11.
 | 
				
			||||||
 | 
					 * 2. Remove padding so people aren't caught out if they zero out fieldsets.
 | 
				
			||||||
 | 
					 */
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					legend {
 | 
				
			||||||
 | 
					  border: 0; /* 1 */
 | 
				
			||||||
 | 
					  padding: 0; /* 2 */
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					/**
 | 
				
			||||||
 | 
					 * Remove default vertical scrollbar in IE 8/9/10/11.
 | 
				
			||||||
 | 
					 */
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					textarea {
 | 
				
			||||||
 | 
					  overflow: auto;
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					/**
 | 
				
			||||||
 | 
					 * Don't inherit the `font-weight` (applied by a rule above).
 | 
				
			||||||
 | 
					 * NOTE: the default cannot safely be changed in Chrome and Safari on OS X.
 | 
				
			||||||
 | 
					 */
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					optgroup {
 | 
				
			||||||
 | 
					  font-weight: bold;
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					/* Tables
 | 
				
			||||||
 | 
					   ========================================================================== */
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					/**
 | 
				
			||||||
 | 
					 * Remove most spacing between table cells.
 | 
				
			||||||
 | 
					 */
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					table {
 | 
				
			||||||
 | 
					  border-collapse: collapse;
 | 
				
			||||||
 | 
					  border-spacing: 0;
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					td,
 | 
				
			||||||
 | 
					th {
 | 
				
			||||||
 | 
					  padding: 0;
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
							
								
								
									
										418
									
								
								teil19/renderhtml/static/css/skeleton.css
									
									
									
									
										vendored
									
									
										Normal file
									
								
							
							
						
						
									
										418
									
								
								teil19/renderhtml/static/css/skeleton.css
									
									
									
									
										vendored
									
									
										Normal file
									
								
							@@ -0,0 +1,418 @@
 | 
				
			|||||||
 | 
					/*
 | 
				
			||||||
 | 
					* Skeleton V2.0.4
 | 
				
			||||||
 | 
					* Copyright 2014, Dave Gamache
 | 
				
			||||||
 | 
					* www.getskeleton.com
 | 
				
			||||||
 | 
					* Free to use under the MIT license.
 | 
				
			||||||
 | 
					* http://www.opensource.org/licenses/mit-license.php
 | 
				
			||||||
 | 
					* 12/29/2014
 | 
				
			||||||
 | 
					*/
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					/* Table of contents
 | 
				
			||||||
 | 
					––––––––––––––––––––––––––––––––––––––––––––––––––
 | 
				
			||||||
 | 
					- Grid
 | 
				
			||||||
 | 
					- Base Styles
 | 
				
			||||||
 | 
					- Typography
 | 
				
			||||||
 | 
					- Links
 | 
				
			||||||
 | 
					- Buttons
 | 
				
			||||||
 | 
					- Forms
 | 
				
			||||||
 | 
					- Lists
 | 
				
			||||||
 | 
					- Code
 | 
				
			||||||
 | 
					- Tables
 | 
				
			||||||
 | 
					- Spacing
 | 
				
			||||||
 | 
					- Utilities
 | 
				
			||||||
 | 
					- Clearing
 | 
				
			||||||
 | 
					- Media Queries
 | 
				
			||||||
 | 
					*/
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					/* Grid
 | 
				
			||||||
 | 
					–––––––––––––––––––––––––––––––––––––––––––––––––– */
 | 
				
			||||||
 | 
					.container {
 | 
				
			||||||
 | 
					  position: relative;
 | 
				
			||||||
 | 
					  width: 100%;
 | 
				
			||||||
 | 
					  max-width: 960px;
 | 
				
			||||||
 | 
					  margin: 0 auto;
 | 
				
			||||||
 | 
					  padding: 0 20px;
 | 
				
			||||||
 | 
					  box-sizing: border-box; }
 | 
				
			||||||
 | 
					.column,
 | 
				
			||||||
 | 
					.columns {
 | 
				
			||||||
 | 
					  width: 100%;
 | 
				
			||||||
 | 
					  float: left;
 | 
				
			||||||
 | 
					  box-sizing: border-box; }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					/* For devices larger than 400px */
 | 
				
			||||||
 | 
					@media (min-width: 400px) {
 | 
				
			||||||
 | 
					  .container {
 | 
				
			||||||
 | 
					    width: 85%;
 | 
				
			||||||
 | 
					    padding: 0; }
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					/* For devices larger than 550px */
 | 
				
			||||||
 | 
					@media (min-width: 550px) {
 | 
				
			||||||
 | 
					  .container {
 | 
				
			||||||
 | 
					    width: 80%; }
 | 
				
			||||||
 | 
					  .column,
 | 
				
			||||||
 | 
					  .columns {
 | 
				
			||||||
 | 
					    margin-left: 4%; }
 | 
				
			||||||
 | 
					  .column:first-child,
 | 
				
			||||||
 | 
					  .columns:first-child {
 | 
				
			||||||
 | 
					    margin-left: 0; }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					  .one.column,
 | 
				
			||||||
 | 
					  .one.columns                    { width: 4.66666666667%; }
 | 
				
			||||||
 | 
					  .two.columns                    { width: 13.3333333333%; }
 | 
				
			||||||
 | 
					  .three.columns                  { width: 22%;            }
 | 
				
			||||||
 | 
					  .four.columns                   { width: 30.6666666667%; }
 | 
				
			||||||
 | 
					  .five.columns                   { width: 39.3333333333%; }
 | 
				
			||||||
 | 
					  .six.columns                    { width: 48%;            }
 | 
				
			||||||
 | 
					  .seven.columns                  { width: 56.6666666667%; }
 | 
				
			||||||
 | 
					  .eight.columns                  { width: 65.3333333333%; }
 | 
				
			||||||
 | 
					  .nine.columns                   { width: 74.0%;          }
 | 
				
			||||||
 | 
					  .ten.columns                    { width: 82.6666666667%; }
 | 
				
			||||||
 | 
					  .eleven.columns                 { width: 91.3333333333%; }
 | 
				
			||||||
 | 
					  .twelve.columns                 { width: 100%; margin-left: 0; }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					  .one-third.column               { width: 30.6666666667%; }
 | 
				
			||||||
 | 
					  .two-thirds.column              { width: 65.3333333333%; }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					  .one-half.column                { width: 48%; }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					  /* Offsets */
 | 
				
			||||||
 | 
					  .offset-by-one.column,
 | 
				
			||||||
 | 
					  .offset-by-one.columns          { margin-left: 8.66666666667%; }
 | 
				
			||||||
 | 
					  .offset-by-two.column,
 | 
				
			||||||
 | 
					  .offset-by-two.columns          { margin-left: 17.3333333333%; }
 | 
				
			||||||
 | 
					  .offset-by-three.column,
 | 
				
			||||||
 | 
					  .offset-by-three.columns        { margin-left: 26%;            }
 | 
				
			||||||
 | 
					  .offset-by-four.column,
 | 
				
			||||||
 | 
					  .offset-by-four.columns         { margin-left: 34.6666666667%; }
 | 
				
			||||||
 | 
					  .offset-by-five.column,
 | 
				
			||||||
 | 
					  .offset-by-five.columns         { margin-left: 43.3333333333%; }
 | 
				
			||||||
 | 
					  .offset-by-six.column,
 | 
				
			||||||
 | 
					  .offset-by-six.columns          { margin-left: 52%;            }
 | 
				
			||||||
 | 
					  .offset-by-seven.column,
 | 
				
			||||||
 | 
					  .offset-by-seven.columns        { margin-left: 60.6666666667%; }
 | 
				
			||||||
 | 
					  .offset-by-eight.column,
 | 
				
			||||||
 | 
					  .offset-by-eight.columns        { margin-left: 69.3333333333%; }
 | 
				
			||||||
 | 
					  .offset-by-nine.column,
 | 
				
			||||||
 | 
					  .offset-by-nine.columns         { margin-left: 78.0%;          }
 | 
				
			||||||
 | 
					  .offset-by-ten.column,
 | 
				
			||||||
 | 
					  .offset-by-ten.columns          { margin-left: 86.6666666667%; }
 | 
				
			||||||
 | 
					  .offset-by-eleven.column,
 | 
				
			||||||
 | 
					  .offset-by-eleven.columns       { margin-left: 95.3333333333%; }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					  .offset-by-one-third.column,
 | 
				
			||||||
 | 
					  .offset-by-one-third.columns    { margin-left: 34.6666666667%; }
 | 
				
			||||||
 | 
					  .offset-by-two-thirds.column,
 | 
				
			||||||
 | 
					  .offset-by-two-thirds.columns   { margin-left: 69.3333333333%; }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					  .offset-by-one-half.column,
 | 
				
			||||||
 | 
					  .offset-by-one-half.columns     { margin-left: 52%; }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					/* Base Styles
 | 
				
			||||||
 | 
					–––––––––––––––––––––––––––––––––––––––––––––––––– */
 | 
				
			||||||
 | 
					/* NOTE
 | 
				
			||||||
 | 
					html is set to 62.5% so that all the REM measurements throughout Skeleton
 | 
				
			||||||
 | 
					are based on 10px sizing. So basically 1.5rem = 15px :) */
 | 
				
			||||||
 | 
					html {
 | 
				
			||||||
 | 
					  font-size: 62.5%; }
 | 
				
			||||||
 | 
					body {
 | 
				
			||||||
 | 
					  font-size: 1.5em; /* currently ems cause chrome bug misinterpreting rems on body element */
 | 
				
			||||||
 | 
					  line-height: 1.6;
 | 
				
			||||||
 | 
					  font-weight: 400;
 | 
				
			||||||
 | 
					  font-family: "Raleway", "HelveticaNeue", "Helvetica Neue", Helvetica, Arial, sans-serif;
 | 
				
			||||||
 | 
					  color: #222; }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					/* Typography
 | 
				
			||||||
 | 
					–––––––––––––––––––––––––––––––––––––––––––––––––– */
 | 
				
			||||||
 | 
					h1, h2, h3, h4, h5, h6 {
 | 
				
			||||||
 | 
					  margin-top: 0;
 | 
				
			||||||
 | 
					  margin-bottom: 2rem;
 | 
				
			||||||
 | 
					  font-weight: 300; }
 | 
				
			||||||
 | 
					h1 { font-size: 4.0rem; line-height: 1.2;  letter-spacing: -.1rem;}
 | 
				
			||||||
 | 
					h2 { font-size: 3.6rem; line-height: 1.25; letter-spacing: -.1rem; }
 | 
				
			||||||
 | 
					h3 { font-size: 3.0rem; line-height: 1.3;  letter-spacing: -.1rem; }
 | 
				
			||||||
 | 
					h4 { font-size: 2.4rem; line-height: 1.35; letter-spacing: -.08rem; }
 | 
				
			||||||
 | 
					h5 { font-size: 1.8rem; line-height: 1.5;  letter-spacing: -.05rem; }
 | 
				
			||||||
 | 
					h6 { font-size: 1.5rem; line-height: 1.6;  letter-spacing: 0; }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					/* Larger than phablet */
 | 
				
			||||||
 | 
					@media (min-width: 550px) {
 | 
				
			||||||
 | 
					  h1 { font-size: 5.0rem; }
 | 
				
			||||||
 | 
					  h2 { font-size: 4.2rem; }
 | 
				
			||||||
 | 
					  h3 { font-size: 3.6rem; }
 | 
				
			||||||
 | 
					  h4 { font-size: 3.0rem; }
 | 
				
			||||||
 | 
					  h5 { font-size: 2.4rem; }
 | 
				
			||||||
 | 
					  h6 { font-size: 1.5rem; }
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					p {
 | 
				
			||||||
 | 
					  margin-top: 0; }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					/* Links
 | 
				
			||||||
 | 
					–––––––––––––––––––––––––––––––––––––––––––––––––– */
 | 
				
			||||||
 | 
					a {
 | 
				
			||||||
 | 
					  color: #1EAEDB; }
 | 
				
			||||||
 | 
					a:hover {
 | 
				
			||||||
 | 
					  color: #0FA0CE; }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					/* Buttons
 | 
				
			||||||
 | 
					–––––––––––––––––––––––––––––––––––––––––––––––––– */
 | 
				
			||||||
 | 
					.button,
 | 
				
			||||||
 | 
					button,
 | 
				
			||||||
 | 
					input[type="submit"],
 | 
				
			||||||
 | 
					input[type="reset"],
 | 
				
			||||||
 | 
					input[type="button"] {
 | 
				
			||||||
 | 
					  display: inline-block;
 | 
				
			||||||
 | 
					  height: 38px;
 | 
				
			||||||
 | 
					  padding: 0 30px;
 | 
				
			||||||
 | 
					  color: #555;
 | 
				
			||||||
 | 
					  text-align: center;
 | 
				
			||||||
 | 
					  font-size: 11px;
 | 
				
			||||||
 | 
					  font-weight: 600;
 | 
				
			||||||
 | 
					  line-height: 38px;
 | 
				
			||||||
 | 
					  letter-spacing: .1rem;
 | 
				
			||||||
 | 
					  text-transform: uppercase;
 | 
				
			||||||
 | 
					  text-decoration: none;
 | 
				
			||||||
 | 
					  white-space: nowrap;
 | 
				
			||||||
 | 
					  background-color: transparent;
 | 
				
			||||||
 | 
					  border-radius: 4px;
 | 
				
			||||||
 | 
					  border: 1px solid #bbb;
 | 
				
			||||||
 | 
					  cursor: pointer;
 | 
				
			||||||
 | 
					  box-sizing: border-box; }
 | 
				
			||||||
 | 
					.button:hover,
 | 
				
			||||||
 | 
					button:hover,
 | 
				
			||||||
 | 
					input[type="submit"]:hover,
 | 
				
			||||||
 | 
					input[type="reset"]:hover,
 | 
				
			||||||
 | 
					input[type="button"]:hover,
 | 
				
			||||||
 | 
					.button:focus,
 | 
				
			||||||
 | 
					button:focus,
 | 
				
			||||||
 | 
					input[type="submit"]:focus,
 | 
				
			||||||
 | 
					input[type="reset"]:focus,
 | 
				
			||||||
 | 
					input[type="button"]:focus {
 | 
				
			||||||
 | 
					  color: #333;
 | 
				
			||||||
 | 
					  border-color: #888;
 | 
				
			||||||
 | 
					  outline: 0; }
 | 
				
			||||||
 | 
					.button.button-primary,
 | 
				
			||||||
 | 
					button.button-primary,
 | 
				
			||||||
 | 
					input[type="submit"].button-primary,
 | 
				
			||||||
 | 
					input[type="reset"].button-primary,
 | 
				
			||||||
 | 
					input[type="button"].button-primary {
 | 
				
			||||||
 | 
					  color: #FFF;
 | 
				
			||||||
 | 
					  background-color: #33C3F0;
 | 
				
			||||||
 | 
					  border-color: #33C3F0; }
 | 
				
			||||||
 | 
					.button.button-primary:hover,
 | 
				
			||||||
 | 
					button.button-primary:hover,
 | 
				
			||||||
 | 
					input[type="submit"].button-primary:hover,
 | 
				
			||||||
 | 
					input[type="reset"].button-primary:hover,
 | 
				
			||||||
 | 
					input[type="button"].button-primary:hover,
 | 
				
			||||||
 | 
					.button.button-primary:focus,
 | 
				
			||||||
 | 
					button.button-primary:focus,
 | 
				
			||||||
 | 
					input[type="submit"].button-primary:focus,
 | 
				
			||||||
 | 
					input[type="reset"].button-primary:focus,
 | 
				
			||||||
 | 
					input[type="button"].button-primary:focus {
 | 
				
			||||||
 | 
					  color: #FFF;
 | 
				
			||||||
 | 
					  background-color: #1EAEDB;
 | 
				
			||||||
 | 
					  border-color: #1EAEDB; }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					/* Forms
 | 
				
			||||||
 | 
					–––––––––––––––––––––––––––––––––––––––––––––––––– */
 | 
				
			||||||
 | 
					input[type="email"],
 | 
				
			||||||
 | 
					input[type="number"],
 | 
				
			||||||
 | 
					input[type="search"],
 | 
				
			||||||
 | 
					input[type="text"],
 | 
				
			||||||
 | 
					input[type="tel"],
 | 
				
			||||||
 | 
					input[type="url"],
 | 
				
			||||||
 | 
					input[type="password"],
 | 
				
			||||||
 | 
					textarea,
 | 
				
			||||||
 | 
					select {
 | 
				
			||||||
 | 
					  height: 38px;
 | 
				
			||||||
 | 
					  padding: 6px 10px; /* The 6px vertically centers text on FF, ignored by Webkit */
 | 
				
			||||||
 | 
					  background-color: #fff;
 | 
				
			||||||
 | 
					  border: 1px solid #D1D1D1;
 | 
				
			||||||
 | 
					  border-radius: 4px;
 | 
				
			||||||
 | 
					  box-shadow: none;
 | 
				
			||||||
 | 
					  box-sizing: border-box; }
 | 
				
			||||||
 | 
					/* Removes awkward default styles on some inputs for iOS */
 | 
				
			||||||
 | 
					input[type="email"],
 | 
				
			||||||
 | 
					input[type="number"],
 | 
				
			||||||
 | 
					input[type="search"],
 | 
				
			||||||
 | 
					input[type="text"],
 | 
				
			||||||
 | 
					input[type="tel"],
 | 
				
			||||||
 | 
					input[type="url"],
 | 
				
			||||||
 | 
					input[type="password"],
 | 
				
			||||||
 | 
					textarea {
 | 
				
			||||||
 | 
					  -webkit-appearance: none;
 | 
				
			||||||
 | 
					     -moz-appearance: none;
 | 
				
			||||||
 | 
					          appearance: none; }
 | 
				
			||||||
 | 
					textarea {
 | 
				
			||||||
 | 
					  min-height: 65px;
 | 
				
			||||||
 | 
					  padding-top: 6px;
 | 
				
			||||||
 | 
					  padding-bottom: 6px; }
 | 
				
			||||||
 | 
					input[type="email"]:focus,
 | 
				
			||||||
 | 
					input[type="number"]:focus,
 | 
				
			||||||
 | 
					input[type="search"]:focus,
 | 
				
			||||||
 | 
					input[type="text"]:focus,
 | 
				
			||||||
 | 
					input[type="tel"]:focus,
 | 
				
			||||||
 | 
					input[type="url"]:focus,
 | 
				
			||||||
 | 
					input[type="password"]:focus,
 | 
				
			||||||
 | 
					textarea:focus,
 | 
				
			||||||
 | 
					select:focus {
 | 
				
			||||||
 | 
					  border: 1px solid #33C3F0;
 | 
				
			||||||
 | 
					  outline: 0; }
 | 
				
			||||||
 | 
					label,
 | 
				
			||||||
 | 
					legend {
 | 
				
			||||||
 | 
					  display: block;
 | 
				
			||||||
 | 
					  margin-bottom: .5rem;
 | 
				
			||||||
 | 
					  font-weight: 600; }
 | 
				
			||||||
 | 
					fieldset {
 | 
				
			||||||
 | 
					  padding: 0;
 | 
				
			||||||
 | 
					  border-width: 0; }
 | 
				
			||||||
 | 
					input[type="checkbox"],
 | 
				
			||||||
 | 
					input[type="radio"] {
 | 
				
			||||||
 | 
					  display: inline; }
 | 
				
			||||||
 | 
					label > .label-body {
 | 
				
			||||||
 | 
					  display: inline-block;
 | 
				
			||||||
 | 
					  margin-left: .5rem;
 | 
				
			||||||
 | 
					  font-weight: normal; }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					/* Lists
 | 
				
			||||||
 | 
					–––––––––––––––––––––––––––––––––––––––––––––––––– */
 | 
				
			||||||
 | 
					ul {
 | 
				
			||||||
 | 
					  list-style: circle inside; }
 | 
				
			||||||
 | 
					ol {
 | 
				
			||||||
 | 
					  list-style: decimal inside; }
 | 
				
			||||||
 | 
					ol, ul {
 | 
				
			||||||
 | 
					  padding-left: 0;
 | 
				
			||||||
 | 
					  margin-top: 0; }
 | 
				
			||||||
 | 
					ul ul,
 | 
				
			||||||
 | 
					ul ol,
 | 
				
			||||||
 | 
					ol ol,
 | 
				
			||||||
 | 
					ol ul {
 | 
				
			||||||
 | 
					  margin: 1.5rem 0 1.5rem 3rem;
 | 
				
			||||||
 | 
					  font-size: 90%; }
 | 
				
			||||||
 | 
					li {
 | 
				
			||||||
 | 
					  margin-bottom: 1rem; }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					/* Code
 | 
				
			||||||
 | 
					–––––––––––––––––––––––––––––––––––––––––––––––––– */
 | 
				
			||||||
 | 
					code {
 | 
				
			||||||
 | 
					  padding: .2rem .5rem;
 | 
				
			||||||
 | 
					  margin: 0 .2rem;
 | 
				
			||||||
 | 
					  font-size: 90%;
 | 
				
			||||||
 | 
					  white-space: nowrap;
 | 
				
			||||||
 | 
					  background: #F1F1F1;
 | 
				
			||||||
 | 
					  border: 1px solid #E1E1E1;
 | 
				
			||||||
 | 
					  border-radius: 4px; }
 | 
				
			||||||
 | 
					pre > code {
 | 
				
			||||||
 | 
					  display: block;
 | 
				
			||||||
 | 
					  padding: 1rem 1.5rem;
 | 
				
			||||||
 | 
					  white-space: pre; }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					/* Tables
 | 
				
			||||||
 | 
					–––––––––––––––––––––––––––––––––––––––––––––––––– */
 | 
				
			||||||
 | 
					th,
 | 
				
			||||||
 | 
					td {
 | 
				
			||||||
 | 
					  padding: 12px 15px;
 | 
				
			||||||
 | 
					  text-align: left;
 | 
				
			||||||
 | 
					  border-bottom: 1px solid #E1E1E1; }
 | 
				
			||||||
 | 
					th:first-child,
 | 
				
			||||||
 | 
					td:first-child {
 | 
				
			||||||
 | 
					  padding-left: 0; }
 | 
				
			||||||
 | 
					th:last-child,
 | 
				
			||||||
 | 
					td:last-child {
 | 
				
			||||||
 | 
					  padding-right: 0; }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					/* Spacing
 | 
				
			||||||
 | 
					–––––––––––––––––––––––––––––––––––––––––––––––––– */
 | 
				
			||||||
 | 
					button,
 | 
				
			||||||
 | 
					.button {
 | 
				
			||||||
 | 
					  margin-bottom: 1rem; }
 | 
				
			||||||
 | 
					input,
 | 
				
			||||||
 | 
					textarea,
 | 
				
			||||||
 | 
					select,
 | 
				
			||||||
 | 
					fieldset {
 | 
				
			||||||
 | 
					  margin-bottom: 1.5rem; }
 | 
				
			||||||
 | 
					pre,
 | 
				
			||||||
 | 
					blockquote,
 | 
				
			||||||
 | 
					dl,
 | 
				
			||||||
 | 
					figure,
 | 
				
			||||||
 | 
					table,
 | 
				
			||||||
 | 
					p,
 | 
				
			||||||
 | 
					ul,
 | 
				
			||||||
 | 
					ol,
 | 
				
			||||||
 | 
					form {
 | 
				
			||||||
 | 
					  margin-bottom: 2.5rem; }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					/* Utilities
 | 
				
			||||||
 | 
					–––––––––––––––––––––––––––––––––––––––––––––––––– */
 | 
				
			||||||
 | 
					.u-full-width {
 | 
				
			||||||
 | 
					  width: 100%;
 | 
				
			||||||
 | 
					  box-sizing: border-box; }
 | 
				
			||||||
 | 
					.u-max-full-width {
 | 
				
			||||||
 | 
					  max-width: 100%;
 | 
				
			||||||
 | 
					  box-sizing: border-box; }
 | 
				
			||||||
 | 
					.u-pull-right {
 | 
				
			||||||
 | 
					  float: right; }
 | 
				
			||||||
 | 
					.u-pull-left {
 | 
				
			||||||
 | 
					  float: left; }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					/* Misc
 | 
				
			||||||
 | 
					–––––––––––––––––––––––––––––––––––––––––––––––––– */
 | 
				
			||||||
 | 
					hr {
 | 
				
			||||||
 | 
					  margin-top: 3rem;
 | 
				
			||||||
 | 
					  margin-bottom: 3.5rem;
 | 
				
			||||||
 | 
					  border-width: 0;
 | 
				
			||||||
 | 
					  border-top: 1px solid #E1E1E1; }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					/* Clearing
 | 
				
			||||||
 | 
					–––––––––––––––––––––––––––––––––––––––––––––––––– */
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					/* Self Clearing Goodness */
 | 
				
			||||||
 | 
					.container:after,
 | 
				
			||||||
 | 
					.row:after,
 | 
				
			||||||
 | 
					.u-cf {
 | 
				
			||||||
 | 
					  content: "";
 | 
				
			||||||
 | 
					  display: table;
 | 
				
			||||||
 | 
					  clear: both; }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					/* Media Queries
 | 
				
			||||||
 | 
					–––––––––––––––––––––––––––––––––––––––––––––––––– */
 | 
				
			||||||
 | 
					/*
 | 
				
			||||||
 | 
					Note: The best way to structure the use of media queries is to create the queries
 | 
				
			||||||
 | 
					near the relevant code. For example, if you wanted to change the styles for buttons
 | 
				
			||||||
 | 
					on small devices, paste the mobile query code up in the buttons section and style it
 | 
				
			||||||
 | 
					there.
 | 
				
			||||||
 | 
					*/
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					/* Larger than mobile */
 | 
				
			||||||
 | 
					@media (min-width: 400px) {}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					/* Larger than phablet (also point when grid becomes active) */
 | 
				
			||||||
 | 
					@media (min-width: 550px) {}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					/* Larger than tablet */
 | 
				
			||||||
 | 
					@media (min-width: 750px) {}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					/* Larger than desktop */
 | 
				
			||||||
 | 
					@media (min-width: 1000px) {}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					/* Larger than Desktop HD */
 | 
				
			||||||
 | 
					@media (min-width: 1200px) {}
 | 
				
			||||||
							
								
								
									
										3
									
								
								teil19/renderhtml/static/styles.css
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										3
									
								
								teil19/renderhtml/static/styles.css
									
									
									
									
									
										Normal file
									
								
							@@ -0,0 +1,3 @@
 | 
				
			|||||||
 | 
					p {
 | 
				
			||||||
 | 
					  color:green;
 | 
				
			||||||
 | 
					}
 | 
				
			||||||
@@ -13,11 +13,11 @@ db_connection.connect(config['pidb']['host'],config['pidb']['user'],config['pidb
 | 
				
			|||||||
app = Flask(__name__)
 | 
					app = Flask(__name__)
 | 
				
			||||||
 | 
					
 | 
				
			||||||
schueler = [
 | 
					schueler = [
 | 
				
			||||||
    {'name':'Simpson','vorname': 'Bart'},
 | 
					    {'name':'Simpson','vorname': 'Bart','highlight': 'True'},
 | 
				
			||||||
    {'name':'Simpson','vorname':'Lisa'},
 | 
					    {'name':'Simpson','vorname':'Lisa',highlight': 'True'},
 | 
				
			||||||
    {'name':'van Houten','vorname':'Milhouse'},
 | 
					    {'name':'van Houten','vorname':'Milhouse','highlight':'False'},
 | 
				
			||||||
    {'name':'Wiggum','vorname':'Ralph'},
 | 
					    {'name':'Wiggum','vorname':'Ralph','highlight':'False'},
 | 
				
			||||||
    {'name':'Jones','vorname':'Jimbo'}
 | 
					    {'name':'Jones','vorname':'Jimbo','highlight':'False'}
 | 
				
			||||||
]
 | 
					]
 | 
				
			||||||
 | 
					
 | 
				
			||||||
@app.route('/')
 | 
					@app.route('/')
 | 
				
			||||||
@@ -8,7 +8,7 @@
 | 
				
			|||||||
 | 
					
 | 
				
			||||||
<body>
 | 
					<body>
 | 
				
			||||||
 <p>
 | 
					 <p>
 | 
				
			||||||
   Ich bin der <strong>Seiteninhalt <em>23</em></strong>
 | 
					   Hier steht der <strong>Text der Seite <em>{{counter}}</em></strong>
 | 
				
			||||||
  </p>
 | 
					  </p>
 | 
				
			||||||
</body>
 | 
					</body>
 | 
				
			||||||
</html
 | 
					</html>
 | 
				
			||||||
@@ -12,8 +12,12 @@
 | 
				
			|||||||
  </p>
 | 
					  </p>
 | 
				
			||||||
 <ul>
 | 
					 <ul>
 | 
				
			||||||
 {% for s in schueler %}
 | 
					 {% for s in schueler %}
 | 
				
			||||||
 | 
					  {%if s['name'] == "Simpson" %}
 | 
				
			||||||
 | 
					  <li><b>{{s['name']}}, {{s['vorname']}}</b></li>
 | 
				
			||||||
 | 
					  {%else %}
 | 
				
			||||||
  <li>{{s['name']}}, {{s['vorname']}}</li>
 | 
					  <li>{{s['name']}}, {{s['vorname']}}</li>
 | 
				
			||||||
 | 
					  {%endif %}
 | 
				
			||||||
 {%endfor %}
 | 
					 {%endfor %}
 | 
				
			||||||
</ul>
 | 
					</ul>
 | 
				
			||||||
</body>
 | 
					</body>
 | 
				
			||||||
</html
 | 
					</html>
 | 
				
			||||||
		Reference in New Issue
	
	Block a user