Use Twitter Bootstrap 4 for Pico default theme.

* [New] Require Twitter Bootstrap 4.0.0-alpha in `composer.json`
* [Changed] Update `index.twig` to use bootstrap hirearchy/classes
* [Changed] style.css => `bootstrap.theme.css`
* [Removed] `menu-icon.png`, bootstrap provides the text-based icon
* [Removed] `scripts/modernizr-2.6.1.min.js`, bootstrap provides `Normalize.css`
This commit is contained in:
theshka 2015-11-07 03:15:01 -06:00
parent 7b4ad7f234
commit a4035ffa98
6 changed files with 242 additions and 392 deletions

View file

@ -15,7 +15,8 @@
"php": ">=5.3.6",
"twig/twig": "1.18.*",
"erusev/parsedown-extra": "0.7.*",
"symfony/yaml" : "2.3"
"symfony/yaml" : "2.3",
"twbs/bootstrap" : "4.0.0-alpha"
},
"autoload": {
"psr-0": {

191
themes/default/bootstrap.theme.css vendored Normal file
View file

@ -0,0 +1,191 @@
/**
* Pico's Default Theme - Twitter Bootstrap 4
*
* @author Gilbert Pellegrom
* @author Tyler Heshka
* @link http://picocms.org
* @license http://opensource.org/licenses/MIT
* @version 1.0
*/
/* Main Styles
/*---------------------------------------------*/
body {
font: 14px/1.8em 'Open Sans', Helvetica, Arial, Helvetica, sans-serif;
color: #444;
background: #FFF;
-webkit-font-smoothing: antialiased;
}
a, a:visited {
color: #2EAE9B;
text-decoration: none;
}
a:hover, a:active {
color: #000;
text-decoration: none;
}
h1, h2, h3, h4, h5, h6 {
margin-top: 1.4em;
margin-bottom: 0.6em;
}
p {
margin-bottom: 1em;
}
hr {
margin: 20px 0;
border: 0;
border-top: 1px solid #eeeeee;
border-bottom: 1px solid #ffffff;
}
blockquote {
padding: 0 0 0 15px;
margin: 0 0 20px;
border-left: 5px solid #eeeeee;
}
code,
pre {
padding: 0 3px 2px;
font-family: Monaco, Menlo, Consolas, "Courier New", monospace;
font-size: 12px;
color: #333333;
-webkit-border-radius: 3px;
-moz-border-radius: 3px;
border-radius: 3px;
}
code {
padding: 2px 4px;
color: #333;
white-space: nowrap;
background-color: #f7f7f9;
border: 1px solid #e1e1e8;
}
pre {
display: block;
padding: 9.5px;
margin: 0 0 10px;
font-size: 13px;
line-height: 20px;
word-break: break-all;
word-wrap: break-word;
white-space: pre;
white-space: pre-wrap;
background-color: #f5f5f5;
border: 1px solid #ccc;
border: 1px solid rgba(0, 0, 0, 0.15);
-webkit-border-radius: 4px;
-moz-border-radius: 4px;
border-radius: 4px;
}
pre code {
padding: 0;
color: inherit;
white-space: pre;
white-space: pre-wrap;
background-color: transparent;
border: 0;
}
/* Nav Styles
/*---------------------------------------------*/
.navbar {
background: #2EAE9B !important;
color: #AFE1DA !important;
padding: 10px 0;
margin-bottom: 0px;
-webkit-border-radius: 0 !important;
-moz-border-radius: 0 !important;
border-radius: 0 !important;
}
.navbar-brand {
color: #FFF !important;
font-weight: bold;
font-size: 2em;
}
.nav-item a {
color: #AFE1DA !important;
}
.nav-item a:hover {
color: #FFF !important;
}
/* Footer Styles
/*---------------------------------------------*/
.footer {
background: #707070;
padding: 10px 0;
margin-top: 100px;
color: #C0C0C0;
}
.footer a {
color: #DDD;
}
.footer a:hover {
color: #FFF;
}
/* Media Queries
/*---------------------------------------------*/
/* Small devices (landscape phones, 34em and up) */
@media (min-width: 34em) {
.navbar {
padding: 20px 0;
margin-bottom: 5px;
}
.footer {
padding: 20px 0;
margin-top: 90px;
}
}
/* Medium devices (tablets, 48em and up) */
@media (min-width: 48em) {
.navbar {
padding: 30px 0;
margin-bottom: 10px;
}
.footer {
padding: 30px 0;
margin-top: 100px;
}
}
/* Large devices (desktops, 62em and up) */
@media (min-width: 62em) {
.navbar {
padding: 40px 0;
margin-bottom: 15px;
}
.footer {
padding: 40px 0;
margin-top: 110px;
}
}
/* Extra large devices (large desktops, 75em and up) */
@media (min-width: 75em) {
.navbar {
padding: 50px 0;
margin-bottom: 20px;
}
.footer {
padding: 50px 0;
margin-top: 120px;
}
}

View file

@ -1,49 +1,70 @@
<!DOCTYPE html>
<html lang="en" class="no-js">
<html lang="en">
<head>
<meta charset="utf-8" />
<title>{% if meta.title %}{{ meta.title }} | {% endif %}{{ site_title }}</title>
<!-- Page Meta -->
<meta charset="utf-8">
<meta name="viewport" content="width=device-width, initial-scale=1">
<meta http-equiv="x-ua-compatible" content="ie=edge">
{% if meta.description %}
<meta name="description" content="{{ meta.description|striptags }}">
<meta name="description" content="{{ meta.description|striptags }}">
{% endif %}{% if meta.robots %}
<meta name="robots" content="{{ meta.robots }}">
<meta name="robots" content="{{ meta.robots }}">
{% endif %}
<link rel="stylesheet" href="http://fonts.googleapis.com/css?family=Open+Sans:400,700" type="text/css" />
<link rel="stylesheet" href="{{ theme_url }}/style.css" type="text/css" />
<!-- Page Title -->
<title>{% if meta.title %}{{ meta.title }} | {% endif %}{{ site_title }}</title>
<!-- Fonts -->
<link rel="stylesheet" href="http://fonts.googleapis.com/css?family=Open+Sans:400,700" type="text/css">
<!-- Stylesheets -->
<link rel="stylesheet" href="{{ base_url }}/vendor/twbs/bootstrap/dist/css/bootstrap.min.css" type="text/css" />
<link rel="stylesheet" href="{{ theme_url }}/bootstrap.theme.css" type="text/css" />
<script src="{{ theme_url }}/scripts/modernizr-2.6.1.min.js"></script>
</head>
<body>
<header id="header">
<div class="inner clearfix">
<h1><a href="{{ "index"|link }}" id="logo">{{ site_title }}</a></h1>
<nav>
<a href="#" class="menu-icon"></a>
<ul>
<!-- Navigation -->
<nav class="navbar navbar-light">
<button class="navbar-toggler hidden-sm-up pull-right" type="button" data-toggle="collapse" data-target="#CollapsingNavbar">
&#9776;
</button>
<div class="container">
<a class="navbar-brand" href="{{ 'index'|link }}">{{ site_title }}</a>
<div class="collapse navbar-toggleable-xs" id="CollapsingNavbar">
<ul class="nav navbar-nav pull-right">
{% for page in pages %}
<li><a href="{{ page.url }}">{{ page.title }}</a></li>
<li class="nav-item">
<a class="nav-link" href="{{ page.url }}">{{ page.title }}</a>
</li>
{% endfor %}
</ul>
</nav>
</div>
</div>
</header>
</nav>
<section id="content">
<div class="inner">
{{ content }}
<!-- Main Content -->
<div class="container">
<div class="row">
<div class="col-xs-12 col-sm-12 col-md-12 col-lg-12 col-xl-12">
{{ content }}
</div>
</div>
</section>
</div>
<footer id="footer">
<div class="inner">
<a href="http://picocms.org/">Pico</a>
was made by <a href="http://gilbert.pellegrom.me">Gilbert Pellegrom</a>
from <a href="http://dev7studios.com">Dev7studios</a>.
<!-- Footer -->
<footer class="footer">
<div class="container">
<p class="text-center">
<a href="http://picocms.org/">Pico</a>
was made by <a href="http://gilbert.pellegrom.me">Gilbert Pellegrom</a>
and is maintained by <a href="https://github.com/picocms/Pico/graphs/contributors">The Pico Community</a>.
Released under the MIT License.
</p>
</div>
</footer>
<!-- Javascript -->
<script src="http://code.jquery.com/jquery-2.1.4.min.js"></script>
<script src="{{ base_url }}/vendor/twbs/bootstrap/dist/js/bootstrap.js"></script>
</body>
</html>

Binary file not shown.

Before

Width:  |  Height:  |  Size: 1.4 KiB

File diff suppressed because one or more lines are too long

View file

@ -1,359 +0,0 @@
/*=================================*/
/* Pico Default Theme
/* By: Gilbert Pellegrom
/* http: //dev7studios.com
/*=================================*/
/* Reset Styles
/*---------------------------------------------*/
html, body, div, span, applet, object, iframe,
h1, h2, h3, h4, h5, h6, p, blockquote, pre,
a, abbr, acronym, address, big, cite, code,
del, dfn, em, font, img, ins, kbd, q, s, samp,
small, strike, strong, sub, sup, tt, var,
dl, dt, dd, ol, ul, li,
fieldset, form, label, legend,
table, caption, tbody, tfoot, thead, tr, th, td {
margin: 0;
padding: 0;
border: 0;
outline: 0;
font-weight: inherit;
font-style: inherit;
font-size: 100%;
font-family: inherit;
vertical-align: baseline;
}
body {
line-height: 1;
color: black;
background: white;
}
table {
border-collapse: separate;
border-spacing: 0;
}
caption, th, td {
text-align: left;
font-weight: normal;
}
blockquote:before, blockquote:after,
q:before, q:after {
content: "";
}
blockquote, q {
quotes: "" "";
}
/* HTML5 tags */
header, section, footer,
aside, nav, article, figure {
display: block;
}
/* hand cursor on clickable input elements */
label, input[type=button], input[type=submit], button {
cursor: pointer;
}
/* make buttons play nice in IE:
www.viget.com/inspire/styling-the-button-element-in-internet-explorer/ */
button {
width: auto;
overflow: visible;
}
/* Sharper Thumbnails */
img {
-ms-interpolation-mode: bicubic;
}
/* Input Styles
/*---------------------------------------------*/
input,
textarea,
select {
padding: 5px;
font: 400 1em Verdana, Sans-serif;
color: #666;
background: #fff;
border: 1px solid #999999;
margin: 0 0 1em 0;
}
input:focus,
textarea:focus,
select:focus {
color: #000;
background: #fff;
border: 1px solid #666666;
}
/* Main Styles
/*---------------------------------------------*/
body {
font: 14px/1.8em 'Open Sans', Helvetica, Arial, Helvetica, sans-serif;
color: #444;
background: #fff;
-webkit-font-smoothing: antialiased;
}
a, a:visited {
color: #2EAE9B;
text-decoration: none;
-webkit-transition: all 0.2s linear;
-moz-transition: all 0.2s linear;
-ms-transition: all 0.2s linear;
-o-transition: all 0.2s linear;
transition: all 0.2s linear;
}
a:hover, a:active {
color: #000;
text-decoration: none;
}
h1, h2, h3, h4, h5, h6 {
color: #000;
line-height: 1.2em;
margin-bottom: 0.6em;
}
h1 {
font-size: 2em;
}
h2 {
font-size: 1.7em;
}
h3 {
font-size: 1.5em;
margin-top: 2em;
}
p {
margin-bottom: 1em;
}
ol, ul {
padding-left: 30px;
margin-bottom: 1em;
}
b, strong {
font-weight: bold;
}
i, em {
font-style: italic;
}
u {
text-decoration: underline;
}
abbr, acronym {
cursor: help;
border-bottom: 0.1em dotted;
}
td, td img {
vertical-align: top;
}
sub {
vertical-align: sub;
font-size: smaller;
}
sup {
vertical-align: super;
font-size: smaller;
}
code {
font-family: Courier, "Courier New", Monaco, Tahoma;
background: #eee;
color: #333;
padding: 0px 2px;
}
pre {
background: #eee;
padding: 20px;
margin-bottom: 1em;
overflow: auto;
}
blockquote {
font-style: italic;
margin: 0 0 1em 15px;
padding-left: 10px;
border-left: 5px solid #dddddd;
}
/* Structure Styles
/*---------------------------------------------*/
.inner {
width: 850px;
margin: 0 auto;
}
#header {
background: #2EAE9B;
padding: 60px 0;
margin-bottom: 80px;
color: #afe1da;
}
#header a { color: #afe1da; }
#header h1 a,
#header a:hover { color: #fff; }
#header h1 {
font-weight: bold;
margin: 0;
float: left;
}
#header .menu-icon {
display: none;
width: 35px;
height: 35px;
background: #afe1da url(menu-icon.png) center;
}
#header nav {
float: right;
list-style: none;
margin: 0;
padding: 0;
}
#header nav a {
font-weight: bold;
margin-left: 20px;
}
#header a:hover#menu-icon {
background-color: #444;
border-radius: 4px 4px 0 0;
}
#header ul {
list-style: none;
}
#header li {
display: inline-block;
float: left;
}
#footer {
background: #707070;
padding: 60px 0;
margin-top: 80px;
color: #C0C0C0;
}
#footer a { color: #ddd; }
#footer a:hover { color: #fff; }
/* Misc Styles
/*---------------------------------------------*/
.clearfix:before,
.clearfix:after {
content: " ";
display: table;
}
.clearfix:after {
clear: both;
}
.clearfix {
*zoom: 1;
}
/* Media Queries
/*---------------------------------------------*/
/* Small Devices, Tablets */
@media only screen and (max-width : 768px) {
.inner {
width: 85%;
}
.inner img {
width:100%;
}
#header {
margin-bottom: 40px;
}
#header h1 a {
font-size:1em;
}
#header .menu-icon {
display:inline-block;
}
#header nav a { color: #000; }
#header nav a:hover { color: #afe1da; }
#header nav ul, nav:active ul {
display: none;
position: absolute;
padding: 20px;
background: #fff;
border: 5px solid #444;
right: 2.7em;
top: 100px;
width: 80%;
border-radius: 4px 0 4px 4px;
z-index: 9999;
}
#header nav li {
text-align: center;
width: 100%;
padding: 10px 0;
margin: 0;
}
#header nav:hover ul {
display: block;
}
}
/* Extra Small Devices, Phones */
@media only screen and (max-width : 480px) {
.inner {
width: 85%;
}
.inner img {
width:100%;
}
#header {
margin-bottom: 30px;
}
#header h1 a {
font-size:1em;
}
#header .menu-icon {
display:inline-block;
}
#header nav a { color: #000; }
#header nav a:hover { color: #afe1da; }
#header nav ul, nav:active ul {
display: none;
position: absolute;
padding: 20px;
background: #fff;
border: 5px solid #444;
right: 0em;
top: 100px;
width: auto;
border-radius: 4px 0 4px 4px;
}
#header nav li {
text-align: center;
width: 100%;
padding: 10px 0;
margin: 0;
}
#header nav:hover ul {
display: block;
}
}