commit
be46e19677
@ -0,0 +1,28 @@ |
||||
#!/usr/bin/env bash |
||||
|
||||
if [ "$TRAVIS_PHP_VERSION" != "5.3" ]; then |
||||
echo "Skipping phpDoc deployment because this is not on the required runtime" |
||||
exit |
||||
fi |
||||
|
||||
if [[ ",$DEPLOY_PHPDOC_BRANCHES," != *,"$TRAVIS_BRANCH",* ]]; then |
||||
echo "Skipping phpDoc deployment because this branch ($TRAVIS_BRANCH) is not permitted to deploy" |
||||
exit |
||||
fi |
||||
|
||||
if [ "$TRAVIS_PULL_REQUEST" != "false" ]; then |
||||
echo "Skipping phpDoc deployment because this pull request (#$TRAVIS_PULL_REQUEST) is not permitted to deploy" |
||||
exit |
||||
fi |
||||
|
||||
PHPDOC_ID="${TRAVIS_BRANCH//\//_}" |
||||
|
||||
generate-phpdoc.sh \ |
||||
"$TRAVIS_BUILD_DIR" "$TRAVIS_BUILD_DIR/build/phpdoc-$PHPDOC_ID" \ |
||||
"Pico 1.0 API Documentation ($TRAVIS_BRANCH branch)" |
||||
[ $? -eq 0 ] || exit 1 |
||||
|
||||
deploy-phpdoc.sh \ |
||||
"$TRAVIS_REPO_SLUG" "heads/$TRAVIS_BRANCH @ $TRAVIS_COMMIT" "$TRAVIS_BUILD_DIR/build/phpdoc-$PHPDOC_ID" \ |
||||
"$TRAVIS_REPO_SLUG" "gh-pages" "phpDoc/$PHPDOC_ID" |
||||
[ $? -eq 0 ] || exit 1 |
@ -0,0 +1,15 @@ |
||||
#!/usr/bin/env bash |
||||
|
||||
[ "$DEPLOY_PHPDOC_RELEASES" == "true" ] || exit |
||||
|
||||
PHPDOC_ID="${TRAVIS_BRANCH//\//_}" |
||||
|
||||
generate-phpdoc.sh \ |
||||
"$TRAVIS_BUILD_DIR" "$TRAVIS_BUILD_DIR/build/phpdoc-$PHPDOC_ID" \ |
||||
"Pico 1.0 API Documentation ($TRAVIS_TAG)" |
||||
[ $? -eq 0 ] || exit 1 |
||||
|
||||
deploy-phpdoc.sh \ |
||||
"$TRAVIS_REPO_SLUG" "tags/$TRAVIS_TAG" "$TRAVIS_BUILD_DIR/build/phpdoc-$PHPDOC_ID" \ |
||||
"$TRAVIS_REPO_SLUG" "gh-pages" "phpDoc/$PHPDOC_ID" |
||||
[ $? -eq 0 ] || exit 1 |
@ -0,0 +1,109 @@ |
||||
#!/usr/bin/env bash |
||||
set -e |
||||
|
||||
# base variables |
||||
APP_NAME="$(basename "$0")" |
||||
BASE_PWD="$PWD" |
||||
|
||||
# environment variables |
||||
# GITHUB_OAUTH_TOKEN GitHub authentication token, see https://github.com/settings/tokens |
||||
|
||||
# parameters |
||||
SOURCE_REPO_SLUG="$1" # source GitHub repo (e.g. picocms/Pico) |
||||
SOURCE_REF="$2" # source reference (either "[ref] @ [commit]" or "[ref]", |
||||
# [ref] can be e.g. heads/master or tags/v1.0.0) |
||||
SOURCE_DIR="$3" # absolute source path |
||||
TARGET_REPO_SLUG="$4" # target GitHub repo (e.g. picocms/Pico) |
||||
TARGET_BRANCH="$5" # target branch (e.g. gh-pages) |
||||
TARGET_DIR="$6" # relative target path |
||||
|
||||
# print parameters |
||||
echo "Deploying phpDocs..." |
||||
printf 'SOURCE_REPO_SLUG="%s"\n' "$SOURCE_REPO_SLUG" |
||||
printf 'SOURCE_REF="%s"\n' "$SOURCE_REF" |
||||
printf 'SOURCE_DIR="%s"\n' "$SOURCE_DIR" |
||||
printf 'TARGET_REPO_SLUG="%s"\n' "$TARGET_REPO_SLUG" |
||||
printf 'TARGET_BRANCH="%s"\n' "$TARGET_BRANCH" |
||||
printf 'TARGET_DIR="%s"\n' "$TARGET_DIR" |
||||
echo |
||||
|
||||
# evaluate source reference |
||||
if [[ "$SOURCE_REF" == *" @ "* ]]; then |
||||
SOURCE_REF_TYPE="commit" |
||||
SOURCE_REF_HEAD="${SOURCE_REF% @ *}" |
||||
SOURCE_REF_COMMIT="${SOURCE_REF##* @ }" |
||||
|
||||
if ! git check-ref-format "$SOURCE_REF_HEAD" || ! git rev-parse --verify "$SOURCE_REF_COMMIT" > /dev/null; then |
||||
echo "FATAL: $APP_NAME source reference '$SOURCE_REF' is invalid" >&2 |
||||
exit 1 |
||||
fi |
||||
elif git check-ref-format "$SOURCE_REF"; then |
||||
SOURCE_REF_TYPE="ref" |
||||
else |
||||
echo "FATAL: $APP_NAME source reference '$SOURCE_REF' is invalid" >&2 |
||||
exit 1 |
||||
fi |
||||
|
||||
# clone repo |
||||
printf 'Cloning repo...\n' |
||||
GIT_DIR="$SOURCE_DIR.git" |
||||
git clone --branch="$TARGET_BRANCH" "https://github.com/$TARGET_REPO_SLUG.git" "$GIT_DIR" |
||||
|
||||
# setup git |
||||
cd "$GIT_DIR" |
||||
git config user.name "Travis CI" |
||||
git config user.email "travis-ci@picocms.org" |
||||
|
||||
if [ -n "$GITHUB_OAUTH_TOKEN" ]; then |
||||
git config credential.helper 'store --file=.git/credentials' |
||||
(umask 077 && echo "https://GitHub:$GITHUB_OAUTH_TOKEN@github.com" > .git/credentials) |
||||
fi |
||||
|
||||
# copy phpdoc |
||||
printf '\nCopying phpDocs...\n' |
||||
[ ! -d "$TARGET_DIR" ] || rm -rf "$TARGET_DIR" |
||||
[ "${SOURCE_DIR:0:1}" == "/" ] || SOURCE_DIR="$BASE_PWD/$SOURCE_DIR" |
||||
cp -R "$SOURCE_DIR" "$TARGET_DIR" |
||||
|
||||
# commit changes |
||||
printf '\nCommiting changes...\n' |
||||
git add --all "$TARGET_DIR" |
||||
git commit --message="Update phpDocumentor class docs for $SOURCE_REF" |
||||
|
||||
# very simple race condition protection for concurrent Travis builds |
||||
# this is no definite protection (race conditions are still possible during `git push`), |
||||
# but it should give a basic protection without disabling concurrent builds completely |
||||
if [ "$SOURCE_REF_TYPE" == "commit" ]; then |
||||
# load branch data via GitHub APIv3 |
||||
printf '\nRetrieving latest commit...\n' |
||||
LATEST_COMMIT_URL="https://api.github.com/repos/$SOURCE_REPO_SLUG/git/refs/$SOURCE_REF_HEAD" |
||||
if [ -n "$GITHUB_OAUTH_TOKEN" ]; then |
||||
LATEST_COMMIT_RESPONSE="$(wget -O- --header="Authorization: token $GITHUB_OAUTH_TOKEN" "$LATEST_COMMIT_URL" 2> /dev/null)" |
||||
else |
||||
LATEST_COMMIT_RESPONSE="$(wget -O- "$LATEST_COMMIT_URL" 2> /dev/null)" |
||||
fi |
||||
|
||||
# evaluate JSON response |
||||
LATEST_COMMIT="$(echo "$LATEST_COMMIT_RESPONSE" | php -r " |
||||
\$json = json_decode(stream_get_contents(STDIN), true); |
||||
if (\$json !== null) { |
||||
if (isset(\$json['ref']) && (\$json['ref'] === 'refs/$SOURCE_REF_HEAD')) { |
||||
if (isset(\$json['object']) && isset(\$json['object']['sha'])) { |
||||
echo \$json['object']['sha']; |
||||
} |
||||
} |
||||
} |
||||
")" |
||||
|
||||
# compare source reference against the latest commit |
||||
if [ "$LATEST_COMMIT" != "$SOURCE_REF_COMMIT" ]; then |
||||
echo "WARNING: $APP_NAME source reference '$SOURCE_REF' doesn't match the latest commit '$LATEST_COMMIT'" >&2 |
||||
exit 0 |
||||
fi |
||||
fi |
||||
|
||||
# push changes |
||||
printf '\nPushing changes...\n' |
||||
git push "https://github.com/$TARGET_REPO_SLUG.git" "$TARGET_BRANCH:$TARGET_BRANCH" |
||||
|
||||
echo |
@ -0,0 +1,24 @@ |
||||
#!/usr/bin/env bash |
||||
set -e |
||||
|
||||
# parameters |
||||
PHPDOC_SOURCE_DIR="$1" |
||||
PHPDOC_TARGET_DIR="$2" |
||||
PHPDOC_TITLE="$3" |
||||
|
||||
# print parameters |
||||
echo "Generating phpDocs..." |
||||
printf 'PHPDOC_SOURCE_DIR="%s"\n' "$PHPDOC_SOURCE_DIR" |
||||
printf 'PHPDOC_TARGET_DIR="%s"\n' "$PHPDOC_TARGET_DIR" |
||||
printf 'PHPDOC_TITLE="%s"\n' "$PHPDOC_TITLE" |
||||
echo |
||||
|
||||
# generate phpdoc |
||||
phpdoc -d "$PHPDOC_SOURCE_DIR" \ |
||||
-i "$PHPDOC_SOURCE_DIR/build/" \ |
||||
-i "$PHPDOC_SOURCE_DIR/vendor/" \ |
||||
-i "$PHPDOC_SOURCE_DIR/plugins/" -f "$PHPDOC_SOURCE_DIR/plugins/DummyPlugin.php" \ |
||||
-t "$PHPDOC_TARGET_DIR" \ |
||||
--title "$PHPDOC_TITLE" |
||||
|
||||
echo |
@ -0,0 +1,20 @@ |
||||
<?php // @codingStandardsIgnoreFile |
||||
|
||||
// check PHP version |
||||
if (version_compare(PHP_VERSION, '5.3.6', '<')) { |
||||
die('Pico requires PHP 5.3.6 or above to run'); |
||||
} |
||||
|
||||
// load dependencies |
||||
require_once(__DIR__ . '/vendor/autoload.php'); |
||||
|
||||
// instance Pico |
||||
$pico = new Pico( |
||||
__DIR__, // root dir |
||||
'config/', // config dir |
||||
'plugins/', // plugins dir |
||||
'themes/' // themes dir |
||||
); |
||||
|
||||
// run application |
||||
echo $pico->run(); |
@ -0,0 +1,39 @@ |
||||
<?xml version="1.0"?> |
||||
<ruleset name="Pico"> |
||||
<description> |
||||
Pico's coding standards mainly base on the PHP-FIG PSR-2 standard, |
||||
but without the MissingNamespace sniff. |
||||
</description> |
||||
|
||||
<!-- |
||||
Exclude build/ and vendor/ dirs as well as minified JavaScript files |
||||
--> |
||||
<exclude-pattern type="relative">^build/</exclude-pattern> |
||||
<exclude-pattern type="relative">^vendor/</exclude-pattern> |
||||
<exclude-pattern>*.min.js</exclude-pattern> |
||||
|
||||
<!-- |
||||
Check files for PHP syntax errors |
||||
--> |
||||
<config name="php_path" value="php"/> |
||||
<rule ref="Generic.PHP.Syntax"/> |
||||
|
||||
<!-- |
||||
Never use deprecated functions, |
||||
as they will be removed in future PHP releases |
||||
--> |
||||
<rule ref="Generic.PHP.DeprecatedFunctions"/> |
||||
|
||||
<!-- |
||||
Warn about structures which affect performance negatively |
||||
--> |
||||
<rule ref="Generic.CodeAnalysis.ForLoopWithTestFunctionCall"/> |
||||
|
||||
<!-- |
||||
Pico follows PHP-FIG PSR-2 Coding Style, |
||||
but doesn't use formal namespaces for historic reasons |
||||
--> |
||||
<rule ref="PSR2"> |
||||
<exclude name="PSR1.Classes.ClassDeclaration.MissingNamespace"/> |
||||
</rule> |
||||
</ruleset> |
@ -1,359 +1,367 @@ |
||||
/*=================================*/ |
||||
/* 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; |
||||
} |
||||
} |
||||
/*=================================*/ |
||||
/* 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: collapse; |
||||
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, table { |
||||
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; |
||||
} |
||||
|
||||
td, th { |
||||
border: solid 1px #999; |
||||
padding: 0.25em 0.5em; |
||||
} |
||||
|
||||
th { |
||||
font-weight: bold; |
||||
text-align: center; |
||||
background: #eee; |
||||
} |
||||
|
||||
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; |
||||
} |
||||
} |
||||
|
Loading…
Reference in new issue