Bootstrap SCSS version 2.0.1
This commit is contained in:
commit
d659698007
9
.gitignore
vendored
Normal file
9
.gitignore
vendored
Normal file
@ -0,0 +1,9 @@
|
|||||||
|
*.pyc
|
||||||
|
*.sw?
|
||||||
|
*.sqlite3
|
||||||
|
.DS_STORE
|
||||||
|
*.egg-info
|
||||||
|
.venv
|
||||||
|
.tox
|
||||||
|
build
|
||||||
|
dist
|
8
MANIFEST.in
Normal file
8
MANIFEST.in
Normal file
@ -0,0 +1,8 @@
|
|||||||
|
include README.txt
|
||||||
|
recursive-include xstatic/pkg/bootstrap_scss *
|
||||||
|
|
||||||
|
global-exclude *.pyc
|
||||||
|
global-exclude *.pyo
|
||||||
|
global-exclude *.orig
|
||||||
|
global-exclude *.rej
|
||||||
|
|
13
README.txt
Normal file
13
README.txt
Normal file
@ -0,0 +1,13 @@
|
|||||||
|
XStatic-Bootstrap-SCSS
|
||||||
|
--------------
|
||||||
|
|
||||||
|
Bootstrap style library packaged for setuptools (easy_install) / pip.
|
||||||
|
|
||||||
|
This package is intended to be used by **any** project that needs these files.
|
||||||
|
|
||||||
|
It intentionally does **not** provide any extra code except some metadata
|
||||||
|
**nor** has any extra requirements. You MAY use some minimal support code from
|
||||||
|
the XStatic base package, if you like.
|
||||||
|
|
||||||
|
You can find more info about the xstatic packaging way in the package `XStatic`.
|
||||||
|
|
27
setup.py
Normal file
27
setup.py
Normal file
@ -0,0 +1,27 @@
|
|||||||
|
from xstatic.pkg import bootstrap_scss as xs
|
||||||
|
|
||||||
|
# The README.txt file should be written in reST so that PyPI can use
|
||||||
|
# it to generate your project's PyPI page.
|
||||||
|
long_description = open('README.txt').read()
|
||||||
|
|
||||||
|
from setuptools import setup, find_packages
|
||||||
|
|
||||||
|
setup(
|
||||||
|
name=xs.PACKAGE_NAME,
|
||||||
|
version=xs.PACKAGE_VERSION,
|
||||||
|
description=xs.DESCRIPTION,
|
||||||
|
long_description=long_description,
|
||||||
|
classifiers=xs.CLASSIFIERS,
|
||||||
|
keywords=xs.KEYWORDS,
|
||||||
|
maintainer=xs.MAINTAINER,
|
||||||
|
maintainer_email=xs.MAINTAINER_EMAIL,
|
||||||
|
license=xs.LICENSE,
|
||||||
|
url=xs.HOMEPAGE,
|
||||||
|
platforms=xs.PLATFORMS,
|
||||||
|
packages=find_packages(),
|
||||||
|
namespace_packages=['xstatic', 'xstatic.pkg', ],
|
||||||
|
include_package_data=True,
|
||||||
|
zip_safe=False,
|
||||||
|
install_requires=[], # nothing! :)
|
||||||
|
# if you like, you MAY use the 'XStatic' package.
|
||||||
|
)
|
1
xstatic/__init__.py
Normal file
1
xstatic/__init__.py
Normal file
@ -0,0 +1 @@
|
|||||||
|
__import__('pkg_resources').declare_namespace(__name__)
|
1
xstatic/pkg/__init__.py
Normal file
1
xstatic/pkg/__init__.py
Normal file
@ -0,0 +1 @@
|
|||||||
|
__import__('pkg_resources').declare_namespace(__name__)
|
49
xstatic/pkg/bootstrap_scss/__init__.py
Normal file
49
xstatic/pkg/bootstrap_scss/__init__.py
Normal file
@ -0,0 +1,49 @@
|
|||||||
|
"""
|
||||||
|
XStatic resource package
|
||||||
|
|
||||||
|
See package 'XStatic' for documentation and basic tools.
|
||||||
|
"""
|
||||||
|
|
||||||
|
DISPLAY_NAME = 'Bootstrap-SCSS' # official name, upper/lowercase allowed, no spaces
|
||||||
|
PACKAGE_NAME = 'XStatic-%s' % DISPLAY_NAME # name used for PyPi
|
||||||
|
|
||||||
|
NAME = __name__.split('.')[-1] # package name (e.g. 'foo' or 'foo_bar')
|
||||||
|
# please use a all-lowercase valid python
|
||||||
|
# package name
|
||||||
|
|
||||||
|
VERSION = '2.0.1' # version of the packaged files, please use the upstream
|
||||||
|
# version number
|
||||||
|
BUILD = '1' # our package build number, so we can release new builds
|
||||||
|
# with fixes for xstatic stuff.
|
||||||
|
PACKAGE_VERSION = VERSION + '.' + BUILD # version used for PyPi
|
||||||
|
|
||||||
|
DESCRIPTION = "%s %s (XStatic packaging standard)" % (DISPLAY_NAME, VERSION)
|
||||||
|
|
||||||
|
PLATFORMS = 'any'
|
||||||
|
CLASSIFIERS = []
|
||||||
|
KEYWORDS = '%s xstatic' % NAME
|
||||||
|
|
||||||
|
# XStatic-* package maintainer:
|
||||||
|
MAINTAINER = 'Radomir Dopieralski'
|
||||||
|
MAINTAINER_EMAIL = 'openstack@sheep.art.pl'
|
||||||
|
|
||||||
|
# this refers to the project homepage of the stuff we packaged:
|
||||||
|
HOMEPAGE = 'http://getbootstrap.org/'
|
||||||
|
|
||||||
|
# this refers to all files:
|
||||||
|
LICENSE = '(same as %s)' % DISPLAY_NAME
|
||||||
|
|
||||||
|
from os.path import join, dirname
|
||||||
|
BASE_DIR = join(dirname(__file__), 'data')
|
||||||
|
# linux package maintainers just can point to their file locations like this:
|
||||||
|
#BASE_DIR = '/usr/share/javascript/bootstrap_scss'
|
||||||
|
|
||||||
|
LOCATIONS = {
|
||||||
|
# CDN locations (if no public CDN exists, use an empty dict)
|
||||||
|
# if value is a string, it is a base location, just append relative
|
||||||
|
# path/filename. if value is a dict, do another lookup using the
|
||||||
|
# relative path/filename you want.
|
||||||
|
# your relative path/filenames should usually be without version
|
||||||
|
# information, because either the base dir/url is exactly for this
|
||||||
|
# version or the mapping will care for accessing this version.
|
||||||
|
}
|
Binary file not shown.
After Width: | Height: | Size: 4.3 KiB |
BIN
xstatic/pkg/bootstrap_scss/data/img/glyphicons-halflings.png
Normal file
BIN
xstatic/pkg/bootstrap_scss/data/img/glyphicons-halflings.png
Normal file
Binary file not shown.
After Width: | Height: | Size: 4.3 KiB |
1720
xstatic/pkg/bootstrap_scss/data/js/bootstrap.js
vendored
Normal file
1720
xstatic/pkg/bootstrap_scss/data/js/bootstrap.js
vendored
Normal file
File diff suppressed because it is too large
Load Diff
318
xstatic/pkg/bootstrap_scss/data/scss/_bootstrap-responsive.scss
Normal file
318
xstatic/pkg/bootstrap_scss/data/scss/_bootstrap-responsive.scss
Normal file
@ -0,0 +1,318 @@
|
|||||||
|
/*!
|
||||||
|
* Bootstrap Responsive v2.0.1
|
||||||
|
*
|
||||||
|
* Copyright 2012 Twitter, Inc
|
||||||
|
* Licensed under the Apache License v2.0
|
||||||
|
* http://www.apache.org/licenses/LICENSE-2.0
|
||||||
|
*
|
||||||
|
* Designed and built with all the love in the world @twitter by @mdo and @fat.
|
||||||
|
* Converted to SASS by Thomas McDonald
|
||||||
|
*/
|
||||||
|
|
||||||
|
// Responsive.css.scss
|
||||||
|
// For phone and tablet devices
|
||||||
|
// -------------------------------------------------------------
|
||||||
|
|
||||||
|
|
||||||
|
// REPEAT VARIABLES & MIXINS
|
||||||
|
// -------------------------
|
||||||
|
// Required since we compile the responsive stuff separately
|
||||||
|
|
||||||
|
@import "bootstrap/variables"; // Modify this for custom colors, font-sizes, etc
|
||||||
|
@import "bootstrap/mixins";
|
||||||
|
|
||||||
|
|
||||||
|
// RESPONSIVE CLASSES
|
||||||
|
// ------------------
|
||||||
|
|
||||||
|
// Hide from screenreaders and browsers
|
||||||
|
// Credit: HTML5 Boilerplate
|
||||||
|
.hidden {
|
||||||
|
display: none;
|
||||||
|
visibility: hidden;
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
// UP TO LANDSCAPE PHONE
|
||||||
|
// ---------------------
|
||||||
|
|
||||||
|
@media (max-width: 480px) {
|
||||||
|
|
||||||
|
// Smooth out the collapsing/expanding nav
|
||||||
|
.nav-collapse {
|
||||||
|
-webkit-transform: translate3d(0, 0, 0); // activate the GPU
|
||||||
|
}
|
||||||
|
|
||||||
|
// Block level the page header small tag for readability
|
||||||
|
.page-header h1 small {
|
||||||
|
display: block;
|
||||||
|
line-height: $baseLineHeight;
|
||||||
|
}
|
||||||
|
|
||||||
|
// Make span* classes full width
|
||||||
|
input[class*="span"], select[class*="span"], textarea[class*="span"], .uneditable-input {
|
||||||
|
display: block;
|
||||||
|
width: 100%;
|
||||||
|
min-height: 28px; /* Make inputs at least the height of their button counterpart */
|
||||||
|
/* Makes inputs behave like true block-level elements */
|
||||||
|
-webkit-box-sizing: border-box; /* Older Webkit */
|
||||||
|
-moz-box-sizing: border-box; /* Older FF */
|
||||||
|
-ms-box-sizing: border-box; /* IE8 */
|
||||||
|
box-sizing: border-box; /* CSS3 spec*/
|
||||||
|
}
|
||||||
|
// But don't let it screw up prepend/append inputs
|
||||||
|
.input-prepend input[class*="span"], .input-append input[class*="span"] {
|
||||||
|
width: auto;
|
||||||
|
}
|
||||||
|
|
||||||
|
// Update checkboxes for iOS
|
||||||
|
input[type="checkbox"], input[type="radio"] {
|
||||||
|
border: 1px solid #ccc;
|
||||||
|
}
|
||||||
|
|
||||||
|
// Remove the horizontal form styles
|
||||||
|
.form-horizontal .control-group > label {
|
||||||
|
float: none;
|
||||||
|
width: auto;
|
||||||
|
padding-top: 0;
|
||||||
|
text-align: left;
|
||||||
|
}
|
||||||
|
// Move over all input controls and content
|
||||||
|
.form-horizontal .controls {
|
||||||
|
margin-left: 0;
|
||||||
|
}
|
||||||
|
// Move the options list down to align with labels
|
||||||
|
.form-horizontal .control-list {
|
||||||
|
padding-top: 0; // has to be padding because margin collaspes
|
||||||
|
}
|
||||||
|
// Move over buttons in .form-actions to align with .controls
|
||||||
|
.form-horizontal .form-actions {
|
||||||
|
padding-left: 10px;
|
||||||
|
padding-right: 10px;
|
||||||
|
}
|
||||||
|
|
||||||
|
// Modals
|
||||||
|
.modal {
|
||||||
|
position: absolute;
|
||||||
|
top: 10px;
|
||||||
|
left: 10px;
|
||||||
|
right: 10px;
|
||||||
|
width: auto;
|
||||||
|
margin: 0;
|
||||||
|
&.fade.in { top: auto; }
|
||||||
|
}
|
||||||
|
.modal-header .close {
|
||||||
|
padding: 10px;
|
||||||
|
margin: -10px;
|
||||||
|
}
|
||||||
|
|
||||||
|
// Carousel
|
||||||
|
.carousel-caption {
|
||||||
|
position: static;
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
// LANDSCAPE PHONE TO SMALL DESKTOP & PORTRAIT TABLET
|
||||||
|
// --------------------------------------------------
|
||||||
|
|
||||||
|
@media (max-width: 767px) {
|
||||||
|
// GRID & CONTAINERS
|
||||||
|
// -----------------
|
||||||
|
// Remove width from containers
|
||||||
|
.container {
|
||||||
|
width: auto;
|
||||||
|
padding: 0 20px;
|
||||||
|
}
|
||||||
|
// Fluid rows
|
||||||
|
.row-fluid {
|
||||||
|
width: 100%;
|
||||||
|
}
|
||||||
|
// Undo negative margin on rows
|
||||||
|
.row {
|
||||||
|
margin-left: 0;
|
||||||
|
}
|
||||||
|
// Make all columns even
|
||||||
|
.row > [class*="span"], .row-fluid > [class*="span"] {
|
||||||
|
float: none;
|
||||||
|
display: block;
|
||||||
|
width: auto;
|
||||||
|
margin: 0;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
// PORTRAIT TABLET TO DEFAULT DESKTOP
|
||||||
|
// ----------------------------------
|
||||||
|
|
||||||
|
@media (min-width: 768px) and (max-width: 979px) {
|
||||||
|
|
||||||
|
// Fixed grid
|
||||||
|
@include gridSystemGenerate(12, 42px, 20px);
|
||||||
|
|
||||||
|
// Fluid grid
|
||||||
|
@include fluidGridSystemGenerate(12, 5.801104972%, 2.762430939%);
|
||||||
|
|
||||||
|
// Input grid
|
||||||
|
@include inputGridSystemGenerate(12, 42px, 20px);
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
// TABLETS AND BELOW
|
||||||
|
// -----------------
|
||||||
|
@media (max-width: 979px) {
|
||||||
|
|
||||||
|
// UNFIX THE TOPBAR
|
||||||
|
// ----------------
|
||||||
|
// Remove any padding from the body
|
||||||
|
body {
|
||||||
|
padding-top: 0;
|
||||||
|
}
|
||||||
|
// Unfix the navbar
|
||||||
|
.navbar-fixed-top {
|
||||||
|
position: static;
|
||||||
|
margin-bottom: $baseLineHeight;
|
||||||
|
}
|
||||||
|
.navbar-fixed-top .navbar-inner {
|
||||||
|
padding: 5px;
|
||||||
|
}
|
||||||
|
.navbar .container {
|
||||||
|
width: auto;
|
||||||
|
padding: 0;
|
||||||
|
}
|
||||||
|
// Account for brand name
|
||||||
|
.navbar .brand {
|
||||||
|
padding-left: 10px;
|
||||||
|
padding-right: 10px;
|
||||||
|
margin: 0 0 0 -5px;
|
||||||
|
}
|
||||||
|
// Nav collapse clears brand
|
||||||
|
.navbar .nav-collapse {
|
||||||
|
clear: left;
|
||||||
|
}
|
||||||
|
// Block-level the nav
|
||||||
|
.navbar .nav {
|
||||||
|
float: none;
|
||||||
|
margin: 0 0 ($baseLineHeight / 2);
|
||||||
|
}
|
||||||
|
.navbar .nav > li {
|
||||||
|
float: none;
|
||||||
|
}
|
||||||
|
.navbar .nav > li > a {
|
||||||
|
margin-bottom: 2px;
|
||||||
|
}
|
||||||
|
.navbar .nav > .divider-vertical {
|
||||||
|
display: none;
|
||||||
|
}
|
||||||
|
.navbar .nav .nav-header {
|
||||||
|
color: $navbarText;
|
||||||
|
text-shadow: none;
|
||||||
|
}
|
||||||
|
// Nav and dropdown links in navbar
|
||||||
|
.navbar .nav > li > a, .navbar .dropdown-menu a {
|
||||||
|
padding: 6px 15px;
|
||||||
|
font-weight: bold;
|
||||||
|
color: $navbarLinkColor;
|
||||||
|
@include border-radius(3px);
|
||||||
|
}
|
||||||
|
.navbar .dropdown-menu li + li a {
|
||||||
|
margin-bottom: 2px;
|
||||||
|
}
|
||||||
|
.navbar .nav > li > a:hover, .navbar .dropdown-menu a:hover {
|
||||||
|
background-color: $navbarBackground;
|
||||||
|
}
|
||||||
|
// Dropdowns in the navbar
|
||||||
|
.navbar .dropdown-menu {
|
||||||
|
position: static;
|
||||||
|
top: auto;
|
||||||
|
left: auto;
|
||||||
|
float: none;
|
||||||
|
display: block;
|
||||||
|
max-width: none;
|
||||||
|
margin: 0 15px;
|
||||||
|
padding: 0;
|
||||||
|
background-color: transparent;
|
||||||
|
border: none;
|
||||||
|
@include border-radius(0);
|
||||||
|
@include box-shadow(none);
|
||||||
|
}
|
||||||
|
.navbar .dropdown-menu:before, .navbar .dropdown-menu:after {
|
||||||
|
display: none;
|
||||||
|
}
|
||||||
|
.navbar .dropdown-menu .divider {
|
||||||
|
display: none;
|
||||||
|
}
|
||||||
|
// Forms in navbar
|
||||||
|
.navbar-form, .navbar-search {
|
||||||
|
float: none;
|
||||||
|
padding: ($baseLineHeight / 2) 15px;
|
||||||
|
margin: ($baseLineHeight / 2) 0;
|
||||||
|
border-top: 1px solid $navbarBackground;
|
||||||
|
border-bottom: 1px solid $navbarBackground;
|
||||||
|
$shadow: inset 0 1px 0 rgba(255,255,255,.1), 0 1px 0 rgba(255,255,255,.1);
|
||||||
|
@include box-shadow($shadow);
|
||||||
|
}
|
||||||
|
// Pull right (secondary) nav content
|
||||||
|
.navbar .nav.pull-right {
|
||||||
|
float: none;
|
||||||
|
margin-left: 0;
|
||||||
|
}
|
||||||
|
// Static navbar
|
||||||
|
.navbar-static .navbar-inner {
|
||||||
|
padding-left: 10px;
|
||||||
|
padding-right: 10px;
|
||||||
|
}
|
||||||
|
// Navbar button
|
||||||
|
.btn-navbar {
|
||||||
|
display: block;
|
||||||
|
}
|
||||||
|
|
||||||
|
// Hide everything in the navbar save .brand and toggle button */
|
||||||
|
.nav-collapse {
|
||||||
|
overflow: hidden;
|
||||||
|
height: 0;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
// DEFAULT DESKTOP
|
||||||
|
// ---------------
|
||||||
|
|
||||||
|
@media (min-width: 980px) {
|
||||||
|
.nav-collapse.collapse {
|
||||||
|
height: auto !important;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
// LARGE DESKTOP & UP
|
||||||
|
// ------------------
|
||||||
|
|
||||||
|
@media (min-width: 1200px) {
|
||||||
|
|
||||||
|
// Fixed grid
|
||||||
|
@include gridSystemGenerate(12, 70px, 30px);
|
||||||
|
|
||||||
|
// Fluid grid
|
||||||
|
@include fluidGridSystemGenerate(12, 5.982905983%, 2.564102564%);
|
||||||
|
|
||||||
|
// Input grid
|
||||||
|
@include inputGridSystemGenerate(12, 70px, 30px);
|
||||||
|
|
||||||
|
// Thumbnails
|
||||||
|
.thumbnails {
|
||||||
|
margin-left: -30px;
|
||||||
|
}
|
||||||
|
.thumbnails > li {
|
||||||
|
margin-left: 30px;
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
63
xstatic/pkg/bootstrap_scss/data/scss/_bootstrap.scss
Normal file
63
xstatic/pkg/bootstrap_scss/data/scss/_bootstrap.scss
Normal file
@ -0,0 +1,63 @@
|
|||||||
|
/*!
|
||||||
|
* Bootstrap 2.0.1
|
||||||
|
*
|
||||||
|
* Copyright 2012 Twitter, Inc
|
||||||
|
* Licensed under the Apache License v2.0
|
||||||
|
* http://www.apache.org/licenses/LICENSE-2.0
|
||||||
|
*
|
||||||
|
* Designed and built with all the love in the world @twitter by @mdo and @fat.
|
||||||
|
* Converted to SASS by Thomas McDonald
|
||||||
|
*/
|
||||||
|
|
||||||
|
// Core variables and mixins
|
||||||
|
@import "bootstrap/variables"; // Modify this for custom colors, font-sizes, etc
|
||||||
|
@import "bootstrap/mixins";
|
||||||
|
|
||||||
|
// CSS Reset
|
||||||
|
@import "bootstrap/reset";
|
||||||
|
|
||||||
|
// Grid system and page structure
|
||||||
|
@import "bootstrap/scaffolding";
|
||||||
|
@import "bootstrap/grid";
|
||||||
|
@import "bootstrap/layouts";
|
||||||
|
|
||||||
|
// Base CSS
|
||||||
|
@import "bootstrap/type";
|
||||||
|
@import "bootstrap/code";
|
||||||
|
@import "bootstrap/forms";
|
||||||
|
@import "bootstrap/tables";
|
||||||
|
|
||||||
|
// Components: common
|
||||||
|
@import "bootstrap/sprites";
|
||||||
|
@import "bootstrap/dropdowns";
|
||||||
|
@import "bootstrap/wells";
|
||||||
|
@import "bootstrap/component-animations";
|
||||||
|
@import "bootstrap/close";
|
||||||
|
|
||||||
|
// Components: Buttons & Alerts
|
||||||
|
@import "bootstrap/buttons";
|
||||||
|
@import "bootstrap/button-groups";
|
||||||
|
@import "bootstrap/alerts"; // Note: alerts share common CSS with buttons and thus have styles in buttons.less
|
||||||
|
|
||||||
|
// Components: Nav
|
||||||
|
@import "bootstrap/navs";
|
||||||
|
@import "bootstrap/navbar";
|
||||||
|
@import "bootstrap/breadcrumbs";
|
||||||
|
@import "bootstrap/pagination";
|
||||||
|
@import "bootstrap/pager";
|
||||||
|
|
||||||
|
// Components: Popovers
|
||||||
|
@import "bootstrap/modals";
|
||||||
|
@import "bootstrap/tooltip";
|
||||||
|
@import "bootstrap/popovers";
|
||||||
|
|
||||||
|
// Components: Misc
|
||||||
|
@import "bootstrap/thumbnails";
|
||||||
|
@import "bootstrap/labels";
|
||||||
|
@import "bootstrap/progress-bars";
|
||||||
|
@import "bootstrap/accordion";
|
||||||
|
@import "bootstrap/carousel";
|
||||||
|
@import "bootstrap/hero-unit";
|
||||||
|
|
||||||
|
// Utility classes
|
||||||
|
@import "bootstrap/utilities"; // Has to be last to override when necessary
|
@ -0,0 +1,28 @@
|
|||||||
|
// ACCORDION
|
||||||
|
// ---------
|
||||||
|
|
||||||
|
|
||||||
|
// Parent container
|
||||||
|
.accordion {
|
||||||
|
margin-bottom: $baseLineHeight;
|
||||||
|
}
|
||||||
|
|
||||||
|
// Group == heading + body
|
||||||
|
.accordion-group {
|
||||||
|
margin-bottom: 2px;
|
||||||
|
border: 1px solid #e5e5e5;
|
||||||
|
@include border-radius(4px);
|
||||||
|
}
|
||||||
|
.accordion-heading {
|
||||||
|
border-bottom: 0;
|
||||||
|
}
|
||||||
|
.accordion-heading .accordion-toggle {
|
||||||
|
display: block;
|
||||||
|
padding: 8px 15px;
|
||||||
|
}
|
||||||
|
|
||||||
|
// Inner needs the styles because you can't animate properly with any styles on the element
|
||||||
|
.accordion-inner {
|
||||||
|
padding: 9px 15px;
|
||||||
|
border-top: 1px solid #e5e5e5;
|
||||||
|
}
|
62
xstatic/pkg/bootstrap_scss/data/scss/bootstrap/_alerts.scss
Normal file
62
xstatic/pkg/bootstrap_scss/data/scss/bootstrap/_alerts.scss
Normal file
@ -0,0 +1,62 @@
|
|||||||
|
// ALERT STYLES
|
||||||
|
// ------------
|
||||||
|
|
||||||
|
// Base alert styles
|
||||||
|
.alert {
|
||||||
|
padding: 8px 35px 8px 14px;
|
||||||
|
margin-bottom: $baseLineHeight;
|
||||||
|
text-shadow: 0 1px 0 rgba(255,255,255,.5);
|
||||||
|
background-color: $warningBackground;
|
||||||
|
border: 1px solid $warningBorder;
|
||||||
|
@include border-radius(4px);
|
||||||
|
}
|
||||||
|
.alert, .alert-heading {
|
||||||
|
color: $warningText;
|
||||||
|
}
|
||||||
|
|
||||||
|
// Adjust close link position
|
||||||
|
.alert .close {
|
||||||
|
position: relative;
|
||||||
|
top: -2px;
|
||||||
|
right: -21px;
|
||||||
|
line-height: 18px;
|
||||||
|
}
|
||||||
|
|
||||||
|
// Alternate styles
|
||||||
|
// ----------------
|
||||||
|
|
||||||
|
.alert-success {
|
||||||
|
background-color: $successBackground;
|
||||||
|
border-color: $successBorder;
|
||||||
|
}
|
||||||
|
.alert-success, .alert-success .alert-heading {
|
||||||
|
color: $successText;
|
||||||
|
}
|
||||||
|
.alert-danger, .alert-error {
|
||||||
|
background-color: $errorBackground;
|
||||||
|
border-color: $errorBorder;
|
||||||
|
}
|
||||||
|
.alert-danger, .alert-error, .alert-danger .alert-heading, .alert-error .alert-heading {
|
||||||
|
color: $errorText;
|
||||||
|
}
|
||||||
|
.alert-info {
|
||||||
|
background-color: $infoBackground;
|
||||||
|
border-color: $infoBorder;
|
||||||
|
}
|
||||||
|
.alert-info, .alert-info .alert-heading {
|
||||||
|
color: $infoText;
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
// Block alerts
|
||||||
|
// ------------------------
|
||||||
|
.alert-block {
|
||||||
|
padding-top: 14px;
|
||||||
|
padding-bottom: 14px;
|
||||||
|
}
|
||||||
|
.alert-block > p, .alert-block > ul {
|
||||||
|
margin-bottom: 0;
|
||||||
|
}
|
||||||
|
.alert-block p + p {
|
||||||
|
margin-top: 5px;
|
||||||
|
}
|
@ -0,0 +1,22 @@
|
|||||||
|
// BREADCRUMBS
|
||||||
|
// -----------
|
||||||
|
|
||||||
|
.breadcrumb {
|
||||||
|
padding: 7px 14px;
|
||||||
|
margin: 0 0 $baseLineHeight;
|
||||||
|
@include gradient-vertical($white, #f5f5f5);
|
||||||
|
border: 1px solid #ddd;
|
||||||
|
@include border-radius(3px);
|
||||||
|
@include box-shadow(inset 0 1px 0 $white);
|
||||||
|
li {
|
||||||
|
display: inline-block;
|
||||||
|
text-shadow: 0 1px 0 $white;
|
||||||
|
}
|
||||||
|
.divider {
|
||||||
|
padding: 0 5px;
|
||||||
|
color: $grayLight;
|
||||||
|
}
|
||||||
|
.active a {
|
||||||
|
color: $grayDark;
|
||||||
|
}
|
||||||
|
}
|
@ -0,0 +1,136 @@
|
|||||||
|
// BUTTON GROUPS
|
||||||
|
// -------------
|
||||||
|
|
||||||
|
|
||||||
|
// Make the div behave like a button
|
||||||
|
.btn-group {
|
||||||
|
position: relative;
|
||||||
|
@include clearfix(); // clears the floated buttons
|
||||||
|
@include ie7-restore-left-whitespace();
|
||||||
|
}
|
||||||
|
|
||||||
|
// Space out series of button groups
|
||||||
|
.btn-group + .btn-group {
|
||||||
|
margin-left: 5px;
|
||||||
|
}
|
||||||
|
|
||||||
|
// Optional: Group multiple button groups together for a toolbar
|
||||||
|
.btn-toolbar {
|
||||||
|
margin-top: $baseLineHeight / 2;
|
||||||
|
margin-bottom: $baseLineHeight / 2;
|
||||||
|
.btn-group {
|
||||||
|
display: inline-block;
|
||||||
|
@include ie7-inline-block();
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
// Float them, remove border radius, then re-add to first and last elements
|
||||||
|
.btn-group .btn {
|
||||||
|
position: relative;
|
||||||
|
float: left;
|
||||||
|
margin-left: -1px;
|
||||||
|
@include border-radius(0);
|
||||||
|
}
|
||||||
|
// Set corners individual because sometimes a single button can be in a .btn-group and we need :first-child and :last-child to both match
|
||||||
|
.btn-group .btn:first-child {
|
||||||
|
margin-left: 0;
|
||||||
|
-webkit-border-top-left-radius: 4px;
|
||||||
|
-moz-border-radius-topleft: 4px;
|
||||||
|
border-top-left-radius: 4px;
|
||||||
|
-webkit-border-bottom-left-radius: 4px;
|
||||||
|
-moz-border-radius-bottomleft: 4px;
|
||||||
|
border-bottom-left-radius: 4px;
|
||||||
|
}
|
||||||
|
.btn-group .btn:last-child, .btn-group .dropdown-toggle {
|
||||||
|
-webkit-border-top-right-radius: 4px;
|
||||||
|
-moz-border-radius-topright: 4px;
|
||||||
|
border-top-right-radius: 4px;
|
||||||
|
-webkit-border-bottom-right-radius: 4px;
|
||||||
|
-moz-border-radius-bottomright: 4px;
|
||||||
|
border-bottom-right-radius: 4px;
|
||||||
|
}
|
||||||
|
// Reset corners for large buttons
|
||||||
|
.btn-group .btn.large:first-child {
|
||||||
|
margin-left: 0;
|
||||||
|
-webkit-border-top-left-radius: 6px;
|
||||||
|
-moz-border-radius-topleft: 6px;
|
||||||
|
border-top-left-radius: 6px;
|
||||||
|
-webkit-border-bottom-left-radius: 6px;
|
||||||
|
-moz-border-radius-bottomleft: 6px;
|
||||||
|
border-bottom-left-radius: 6px;
|
||||||
|
}
|
||||||
|
.btn-group .btn.large:last-child, .btn-group .large.dropdown-toggle {
|
||||||
|
-webkit-border-top-right-radius: 6px;
|
||||||
|
-moz-border-radius-topright: 6px;
|
||||||
|
border-top-right-radius: 6px;
|
||||||
|
-webkit-border-bottom-right-radius: 6px;
|
||||||
|
-moz-border-radius-bottomright: 6px;
|
||||||
|
border-bottom-right-radius: 6px;
|
||||||
|
}
|
||||||
|
|
||||||
|
// On hover/focus/active, bring the proper btn to front
|
||||||
|
.btn-group .btn:hover, .btn-group .btn:focus, .btn-group .btn:active, .btn-group .btn.active {
|
||||||
|
z-index: 2;
|
||||||
|
}
|
||||||
|
|
||||||
|
// On active and open, don't show outline
|
||||||
|
.btn-group .dropdown-toggle:active, .btn-group.open .dropdown-toggle {
|
||||||
|
outline: 0;
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
// Split button dropdowns
|
||||||
|
// ----------------------
|
||||||
|
|
||||||
|
// Give the line between buttons some depth
|
||||||
|
.btn-group .dropdown-toggle {
|
||||||
|
padding-left: 8px;
|
||||||
|
padding-right: 8px;
|
||||||
|
$shadow: inset 1px 0 0 rgba(255,255,255,.125), inset 0 1px 0 rgba(255,255,255,.2), 0 1px 2px rgba(0,0,0,.05);
|
||||||
|
@include box-shadow($shadow);
|
||||||
|
*padding-top: 5px;
|
||||||
|
*padding-bottom: 5px;
|
||||||
|
}
|
||||||
|
|
||||||
|
.btn-group.open {
|
||||||
|
// IE7's z-index only goes to the nearest positioned ancestor, which would
|
||||||
|
// make the menu appear below buttons that appeared later on the page
|
||||||
|
*z-index: $zindexDropdown;
|
||||||
|
|
||||||
|
// Reposition menu on open and round all corners
|
||||||
|
.dropdown-menu {
|
||||||
|
display: block;
|
||||||
|
margin-top: 1px;
|
||||||
|
@include border-radius(5px);
|
||||||
|
}
|
||||||
|
|
||||||
|
.dropdown-toggle {
|
||||||
|
background-image: none;
|
||||||
|
$shadow: inset 0 1px 6px rgba(0,0,0,.15), 0 1px 2px rgba(0,0,0,.05);
|
||||||
|
@include box-shadow($shadow);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
// Reposition the caret
|
||||||
|
.btn .caret {
|
||||||
|
margin-top: 7px;
|
||||||
|
margin-left: 0;
|
||||||
|
}
|
||||||
|
.btn:hover .caret, .open.btn-group .caret {
|
||||||
|
@include opacity(1);
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
// Account for other colors
|
||||||
|
.btn-primary, .btn-danger, .btn-info, .btn-success, .btn-inverse {
|
||||||
|
.caret {
|
||||||
|
border-top-color: $white;
|
||||||
|
@include opacity(0.75);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
// Small button dropdowns
|
||||||
|
.btn-small .caret {
|
||||||
|
margin-top: 4px;
|
||||||
|
}
|
163
xstatic/pkg/bootstrap_scss/data/scss/bootstrap/_buttons.scss
Normal file
163
xstatic/pkg/bootstrap_scss/data/scss/bootstrap/_buttons.scss
Normal file
@ -0,0 +1,163 @@
|
|||||||
|
// BUTTON STYLES
|
||||||
|
// -------------
|
||||||
|
|
||||||
|
|
||||||
|
// Base styles
|
||||||
|
// --------------------------------------------------
|
||||||
|
|
||||||
|
// Core
|
||||||
|
.btn {
|
||||||
|
display: inline-block;
|
||||||
|
padding: 4px 10px 4px;
|
||||||
|
margin-bottom: 0; // For input.btn
|
||||||
|
font-size: $baseFontSize;
|
||||||
|
line-height: $baseLineHeight;
|
||||||
|
color: $grayDark;
|
||||||
|
text-align: center;
|
||||||
|
text-shadow: 0 1px 1px rgba(255,255,255,.75);
|
||||||
|
vertical-align: middle;
|
||||||
|
@include buttonBackground($white, darken($white, 10%));
|
||||||
|
border: 1px solid #ccc;
|
||||||
|
border-bottom-color: #bbb;
|
||||||
|
@include border-radius(4px);
|
||||||
|
$shadow: inset 0 1px 0 rgba(255,255,255,.2), 0 1px 2px rgba(0,0,0,.05);
|
||||||
|
@include box-shadow($shadow);
|
||||||
|
cursor: pointer;
|
||||||
|
|
||||||
|
// Give IE7 some love
|
||||||
|
@include reset-filter();
|
||||||
|
@include ie7-restore-left-whitespace();
|
||||||
|
}
|
||||||
|
|
||||||
|
// Hover state
|
||||||
|
.btn:hover {
|
||||||
|
color: $grayDark;
|
||||||
|
text-decoration: none;
|
||||||
|
background-color: darken($white, 10%);
|
||||||
|
background-position: 0 -15px;
|
||||||
|
|
||||||
|
// transition is only when going to hover, otherwise the background
|
||||||
|
// behind the gradient (there for IE<=9 fallback) gets mismatched
|
||||||
|
@include transition(background-position .1s linear);
|
||||||
|
}
|
||||||
|
|
||||||
|
// Focus state for keyboard and accessibility
|
||||||
|
.btn:focus {
|
||||||
|
@include tab-focus();
|
||||||
|
}
|
||||||
|
|
||||||
|
// Active state
|
||||||
|
.btn.active, .btn:active {
|
||||||
|
background-image: none;
|
||||||
|
$shadow: inset 0 2px 4px rgba(0,0,0,.15), 0 1px 2px rgba(0,0,0,.05);
|
||||||
|
@include box-shadow($shadow);
|
||||||
|
background-color: darken($white, 10%);
|
||||||
|
background-color: darken($white, 15%) \9;
|
||||||
|
outline: 0;
|
||||||
|
}
|
||||||
|
|
||||||
|
// Disabled state
|
||||||
|
.btn.disabled, .btn[disabled] {
|
||||||
|
cursor: default;
|
||||||
|
background-image: none;
|
||||||
|
background-color: darken($white, 10%);
|
||||||
|
@include opacity(0.65);
|
||||||
|
@include box-shadow(none);
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
// Button Sizes
|
||||||
|
// --------------------------------------------------
|
||||||
|
|
||||||
|
// Large
|
||||||
|
.btn-large {
|
||||||
|
padding: 9px 14px;
|
||||||
|
font-size: $baseFontSize + 2px;
|
||||||
|
line-height: normal;
|
||||||
|
@include border-radius(5px);
|
||||||
|
}
|
||||||
|
.btn-large [class^="icon-"] {
|
||||||
|
margin-top: 1px;
|
||||||
|
}
|
||||||
|
|
||||||
|
// Small
|
||||||
|
.btn-small {
|
||||||
|
padding: 5px 9px;
|
||||||
|
font-size: $baseFontSize - 2px;
|
||||||
|
line-height: $baseLineHeight - 2px;
|
||||||
|
}
|
||||||
|
.btn-small [class^="icon-"] {
|
||||||
|
margin-top: -1px;
|
||||||
|
}
|
||||||
|
|
||||||
|
// Mini
|
||||||
|
.btn-mini {
|
||||||
|
padding: 2px 6px;
|
||||||
|
font-size: $baseFontSize - 2px;
|
||||||
|
line-height: $baseLineHeight - 4px;
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
// Alternate buttons
|
||||||
|
// --------------------------------------------------
|
||||||
|
|
||||||
|
// Set text color
|
||||||
|
// -------------------------
|
||||||
|
.btn-primary, .btn-primary:hover, .btn-warning, .btn-warning:hover, .btn-danger, .btn-danger:hover, .btn-success, .btn-success:hover, .btn-info, .btn-info:hover, .btn-inverse, .btn-inverse:hover {
|
||||||
|
text-shadow: 0 -1px 0 rgba(0,0,0,.25);
|
||||||
|
color: $white;
|
||||||
|
}
|
||||||
|
// Provide *some* extra contrast for those who can get it
|
||||||
|
.btn-primary.active, .btn-warning.active, .btn-danger.active, .btn-success.active, .btn-info.active, .btn-inverse.active {
|
||||||
|
color: rgba(255,255,255,.75);
|
||||||
|
}
|
||||||
|
|
||||||
|
// Set the backgrounds
|
||||||
|
// -------------------------
|
||||||
|
.btn-primary {
|
||||||
|
@include buttonBackground($primaryButtonBackground, adjust-hue($primaryButtonBackground, 20));
|
||||||
|
}
|
||||||
|
// Warning appears are orange
|
||||||
|
.btn-warning {
|
||||||
|
@include buttonBackground(lighten($orange, 15%), $orange);
|
||||||
|
}
|
||||||
|
// Danger and error appear as red
|
||||||
|
.btn-danger {
|
||||||
|
@include buttonBackground(#ee5f5b, #bd362f);
|
||||||
|
}
|
||||||
|
// Success appears as green
|
||||||
|
.btn-success {
|
||||||
|
@include buttonBackground(#62c462, #51a351);
|
||||||
|
}
|
||||||
|
// Info appears as a neutral blue
|
||||||
|
.btn-info {
|
||||||
|
@include buttonBackground(#5bc0de, #2f96b4);
|
||||||
|
}
|
||||||
|
.btn-inverse {
|
||||||
|
@include buttonBackground(#454545, #262626);
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
// Cross-browser Jank
|
||||||
|
// --------------------------------------------------
|
||||||
|
|
||||||
|
button.btn, input[type="submit"].btn {
|
||||||
|
|
||||||
|
// Firefox 3.6 only I believe
|
||||||
|
&::-moz-focus-inner {
|
||||||
|
padding: 0;
|
||||||
|
border: 0;
|
||||||
|
}
|
||||||
|
|
||||||
|
// IE7 has some default padding on button controls
|
||||||
|
*padding-top: 2px;
|
||||||
|
*padding-bottom: 2px;
|
||||||
|
&.large {
|
||||||
|
*padding-top: 7px;
|
||||||
|
*padding-bottom: 7px;
|
||||||
|
}
|
||||||
|
&.small {
|
||||||
|
*padding-top: 3px;
|
||||||
|
*padding-bottom: 3px;
|
||||||
|
}
|
||||||
|
}
|
116
xstatic/pkg/bootstrap_scss/data/scss/bootstrap/_carousel.scss
Normal file
116
xstatic/pkg/bootstrap_scss/data/scss/bootstrap/_carousel.scss
Normal file
@ -0,0 +1,116 @@
|
|||||||
|
// CAROUSEL
|
||||||
|
// --------
|
||||||
|
|
||||||
|
.carousel {
|
||||||
|
position: relative;
|
||||||
|
margin-bottom: $baseLineHeight;
|
||||||
|
line-height: 1;
|
||||||
|
}
|
||||||
|
|
||||||
|
.carousel-inner {
|
||||||
|
overflow: hidden;
|
||||||
|
width: 100%;
|
||||||
|
position: relative;
|
||||||
|
}
|
||||||
|
|
||||||
|
.carousel {
|
||||||
|
|
||||||
|
.item {
|
||||||
|
display: none;
|
||||||
|
position: relative;
|
||||||
|
@include transition(.6s ease-in-out left);
|
||||||
|
}
|
||||||
|
|
||||||
|
// Account for jankitude on images
|
||||||
|
.item > img {
|
||||||
|
display: block;
|
||||||
|
line-height: 1;
|
||||||
|
}
|
||||||
|
|
||||||
|
.active, .next, .prev { display: block; }
|
||||||
|
|
||||||
|
.active {
|
||||||
|
left: 0;
|
||||||
|
}
|
||||||
|
|
||||||
|
.next, .prev {
|
||||||
|
position: absolute;
|
||||||
|
top: 0;
|
||||||
|
width: 100%;
|
||||||
|
}
|
||||||
|
|
||||||
|
.next {
|
||||||
|
left: 100%;
|
||||||
|
}
|
||||||
|
.prev {
|
||||||
|
left: -100%;
|
||||||
|
}
|
||||||
|
.next.left, .prev.right {
|
||||||
|
left: 0;
|
||||||
|
}
|
||||||
|
|
||||||
|
.active.left {
|
||||||
|
left: -100%;
|
||||||
|
}
|
||||||
|
.active.right {
|
||||||
|
left: 100%;
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
// Left/right controls for nav
|
||||||
|
// ---------------------------
|
||||||
|
|
||||||
|
.carousel-control {
|
||||||
|
position: absolute;
|
||||||
|
top: 40%;
|
||||||
|
left: 15px;
|
||||||
|
width: 40px;
|
||||||
|
height: 40px;
|
||||||
|
margin-top: -20px;
|
||||||
|
font-size: 60px;
|
||||||
|
font-weight: 100;
|
||||||
|
line-height: 30px;
|
||||||
|
color: $white;
|
||||||
|
text-align: center;
|
||||||
|
background: $grayDarker;
|
||||||
|
border: 3px solid $white;
|
||||||
|
@include border-radius(23px);
|
||||||
|
@include opacity(0.5);
|
||||||
|
|
||||||
|
// we can't have this transition here
|
||||||
|
// because webkit cancels the carousel
|
||||||
|
// animation if you trip this while
|
||||||
|
// in the middle of another animation
|
||||||
|
// ;_;
|
||||||
|
// @include transition(opacity .2s linear);
|
||||||
|
|
||||||
|
// Reposition the right one
|
||||||
|
&.right {
|
||||||
|
left: auto;
|
||||||
|
right: 15px;
|
||||||
|
}
|
||||||
|
|
||||||
|
// Hover state
|
||||||
|
&:hover {
|
||||||
|
color: $white;
|
||||||
|
text-decoration: none;
|
||||||
|
@include opacity(0.9);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
// Caption for text below images
|
||||||
|
// -----------------------------
|
||||||
|
|
||||||
|
.carousel-caption {
|
||||||
|
position: absolute;
|
||||||
|
left: 0;
|
||||||
|
right: 0;
|
||||||
|
bottom: 0;
|
||||||
|
padding: 10px 15px 5px;
|
||||||
|
background: $grayDark;
|
||||||
|
background: rgba(0,0,0,.75);
|
||||||
|
}
|
||||||
|
.carousel-caption h4, .carousel-caption p {
|
||||||
|
color: $white;
|
||||||
|
}
|
18
xstatic/pkg/bootstrap_scss/data/scss/bootstrap/_close.scss
Normal file
18
xstatic/pkg/bootstrap_scss/data/scss/bootstrap/_close.scss
Normal file
@ -0,0 +1,18 @@
|
|||||||
|
// CLOSE ICONS
|
||||||
|
// -----------
|
||||||
|
|
||||||
|
.close {
|
||||||
|
float: right;
|
||||||
|
font-size: 20px;
|
||||||
|
font-weight: bold;
|
||||||
|
line-height: $baseLineHeight;
|
||||||
|
color: $black;
|
||||||
|
text-shadow: 0 1px 0 rgba(255,255,255,1);
|
||||||
|
@include opacity(0.2);
|
||||||
|
&:hover {
|
||||||
|
color: $black;
|
||||||
|
text-decoration: none;
|
||||||
|
@include opacity(0.4);
|
||||||
|
cursor: pointer;
|
||||||
|
}
|
||||||
|
}
|
56
xstatic/pkg/bootstrap_scss/data/scss/bootstrap/_code.scss
Normal file
56
xstatic/pkg/bootstrap_scss/data/scss/bootstrap/_code.scss
Normal file
@ -0,0 +1,56 @@
|
|||||||
|
// Code.css.scss
|
||||||
|
// Code typography styles for the <code> and <pre> elements
|
||||||
|
// --------------------------------------------------------
|
||||||
|
|
||||||
|
// Inline and block code styles
|
||||||
|
code, pre {
|
||||||
|
padding: 0 3px 2px;
|
||||||
|
@include font-family-monospace();
|
||||||
|
font-size: $baseFontSize - 1;
|
||||||
|
color: $grayDark;
|
||||||
|
@include border-radius(3px);
|
||||||
|
}
|
||||||
|
|
||||||
|
// Inline code
|
||||||
|
code {
|
||||||
|
padding: 3px 4px;
|
||||||
|
color: #d14;
|
||||||
|
background-color: #f7f7f9;
|
||||||
|
border: 1px solid #e1e1e8;
|
||||||
|
}
|
||||||
|
|
||||||
|
// Blocks of code
|
||||||
|
pre {
|
||||||
|
display: block;
|
||||||
|
padding: ($baseLineHeight - 1) / 2;
|
||||||
|
margin: 0 0 $baseLineHeight / 2;
|
||||||
|
font-size: 12px;
|
||||||
|
line-height: $baseLineHeight;
|
||||||
|
background-color: #f5f5f5;
|
||||||
|
border: 1px solid #ccc; // fallback for IE7-8
|
||||||
|
border: 1px solid rgba(0,0,0,.15);
|
||||||
|
@include border-radius(4px);
|
||||||
|
white-space: pre;
|
||||||
|
white-space: pre-wrap;
|
||||||
|
word-break: break-all;
|
||||||
|
word-wrap: break-word;
|
||||||
|
|
||||||
|
// Make prettyprint styles more spaced out for readability
|
||||||
|
&.prettyprint {
|
||||||
|
margin-bottom: $baseLineHeight;
|
||||||
|
}
|
||||||
|
|
||||||
|
// Account for some code outputs that place code tags in pre tags
|
||||||
|
code {
|
||||||
|
padding: 0;
|
||||||
|
color: inherit;
|
||||||
|
background-color: transparent;
|
||||||
|
border: 0;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
// Enable scrollable blocks of code
|
||||||
|
.pre-scrollable {
|
||||||
|
max-height: 340px;
|
||||||
|
overflow-y: scroll;
|
||||||
|
}
|
@ -0,0 +1,18 @@
|
|||||||
|
// COMPONENT ANIMATIONS
|
||||||
|
// --------------------
|
||||||
|
|
||||||
|
.fade {
|
||||||
|
@include transition(opacity .15s linear);
|
||||||
|
opacity: 0;
|
||||||
|
&.in {
|
||||||
|
opacity: 1;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
.collapse {
|
||||||
|
@include transition(height .35s ease);
|
||||||
|
position:relative;
|
||||||
|
overflow:hidden;
|
||||||
|
height: 0;
|
||||||
|
&.in { height: auto; }
|
||||||
|
}
|
126
xstatic/pkg/bootstrap_scss/data/scss/bootstrap/_dropdowns.scss
Normal file
126
xstatic/pkg/bootstrap_scss/data/scss/bootstrap/_dropdowns.scss
Normal file
@ -0,0 +1,126 @@
|
|||||||
|
// DROPDOWN MENUS
|
||||||
|
// --------------
|
||||||
|
|
||||||
|
// Use the .menu class on any <li> element within the topbar or ul.tabs and you'll get some superfancy dropdowns
|
||||||
|
.dropdown {
|
||||||
|
position: relative;
|
||||||
|
}
|
||||||
|
.dropdown-toggle {
|
||||||
|
// The caret makes the toggle a bit too tall in IE7
|
||||||
|
*margin-bottom: -3px;
|
||||||
|
}
|
||||||
|
.dropdown-toggle:active, .open .dropdown-toggle {
|
||||||
|
outline: 0;
|
||||||
|
}
|
||||||
|
// Dropdown arrow/caret
|
||||||
|
.caret {
|
||||||
|
display: inline-block;
|
||||||
|
width: 0;
|
||||||
|
height: 0;
|
||||||
|
text-indent: -99999px;
|
||||||
|
// IE7 won't do the border trick if there's a text indent, but it doesn't
|
||||||
|
// do the content that text-indent is hiding, either, so we're ok.
|
||||||
|
*text-indent: 0;
|
||||||
|
vertical-align: top;
|
||||||
|
border-left: 4px solid transparent;
|
||||||
|
border-right: 4px solid transparent;
|
||||||
|
border-top: 4px solid $black;
|
||||||
|
@include opacity(0.3);
|
||||||
|
content: "\2193";
|
||||||
|
}
|
||||||
|
.dropdown .caret {
|
||||||
|
margin-top: 8px;
|
||||||
|
margin-left: 2px;
|
||||||
|
}
|
||||||
|
.dropdown:hover .caret, .open.dropdown .caret {
|
||||||
|
@include opacity(1);
|
||||||
|
}
|
||||||
|
// The dropdown menu (ul)
|
||||||
|
.dropdown-menu {
|
||||||
|
position: absolute;
|
||||||
|
top: 100%;
|
||||||
|
left: 0;
|
||||||
|
z-index: $zindexDropdown;
|
||||||
|
float: left;
|
||||||
|
display: none; // none by default, but block on "open" of the menu
|
||||||
|
min-width: 160px;
|
||||||
|
_width: 160px;
|
||||||
|
padding: 4px 0;
|
||||||
|
margin: 0; // override default ul
|
||||||
|
list-style: none;
|
||||||
|
background-color: $white;
|
||||||
|
border-color: #ccc;
|
||||||
|
border-color: rgba(0,0,0,.2);
|
||||||
|
border-style: solid;
|
||||||
|
border-width: 1px;
|
||||||
|
@include border-radius(0 0 5px 5px);
|
||||||
|
@include box-shadow(0 5px 10px rgba(0,0,0,.2));
|
||||||
|
-webkit-background-clip: padding-box;
|
||||||
|
-moz-background-clip: padding;
|
||||||
|
background-clip: padding-box;
|
||||||
|
*border-right-width: 2px;
|
||||||
|
*border-bottom-width: 2px;
|
||||||
|
|
||||||
|
// Allow for dropdowns to go bottom up (aka, dropup-menu)
|
||||||
|
&.bottom-up {
|
||||||
|
top: auto;
|
||||||
|
bottom: 100%;
|
||||||
|
margin-bottom: 2px;
|
||||||
|
}
|
||||||
|
|
||||||
|
// Dividers (basically an hr) within the dropdown
|
||||||
|
.divider {
|
||||||
|
height: 1px;
|
||||||
|
margin: 5px 1px;
|
||||||
|
overflow: hidden;
|
||||||
|
background-color: #e5e5e5;
|
||||||
|
border-bottom: 1px solid $white;
|
||||||
|
|
||||||
|
// IE7 needs a set width since we gave a height. Restricting just
|
||||||
|
// to IE7 to keep the 1px left/right space in other browsers.
|
||||||
|
// It is unclear where IE is getting the extra space that we need
|
||||||
|
// to negative-margin away, but so it goes.
|
||||||
|
*width: 100%;
|
||||||
|
*margin: -5px 0 5px;
|
||||||
|
}
|
||||||
|
|
||||||
|
// Links within the dropdown menu
|
||||||
|
a {
|
||||||
|
display: block;
|
||||||
|
padding: 3px 15px;
|
||||||
|
clear: both;
|
||||||
|
font-weight: normal;
|
||||||
|
line-height: $baseLineHeight;
|
||||||
|
color: $gray;
|
||||||
|
white-space: nowrap;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
// Hover state
|
||||||
|
.dropdown-menu li > a:hover, .dropdown-menu .active > a, .dropdown-menu .active > a:hover {
|
||||||
|
color: $white;
|
||||||
|
text-decoration: none;
|
||||||
|
background-color: $linkColor;
|
||||||
|
}
|
||||||
|
|
||||||
|
// Open state for the dropdown
|
||||||
|
.dropdown.open {
|
||||||
|
// IE7's z-index only goes to the nearest positioned ancestor, which would
|
||||||
|
// make the menu appear below buttons that appeared later on the page
|
||||||
|
*z-index: $zindexDropdown;
|
||||||
|
|
||||||
|
.dropdown-toggle {
|
||||||
|
color: $white;
|
||||||
|
background: #ccc;
|
||||||
|
background: rgba(0,0,0,.3);
|
||||||
|
}
|
||||||
|
.dropdown-menu {
|
||||||
|
display: block;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
// Typeahead
|
||||||
|
.typeahead {
|
||||||
|
margin-top: 2px; // give it some space to breathe
|
||||||
|
@include border-radius(4px);
|
||||||
|
}
|
463
xstatic/pkg/bootstrap_scss/data/scss/bootstrap/_forms.scss
Normal file
463
xstatic/pkg/bootstrap_scss/data/scss/bootstrap/_forms.scss
Normal file
@ -0,0 +1,463 @@
|
|||||||
|
// Forms.less
|
||||||
|
// Base styles for various input types, form layouts, and states
|
||||||
|
// -------------------------------------------------------------
|
||||||
|
|
||||||
|
|
||||||
|
// GENERAL STYLES
|
||||||
|
// --------------
|
||||||
|
|
||||||
|
// Make all forms have space below them
|
||||||
|
form {
|
||||||
|
margin: 0 0 $baseLineHeight;
|
||||||
|
}
|
||||||
|
|
||||||
|
fieldset {
|
||||||
|
padding: 0;
|
||||||
|
margin: 0;
|
||||||
|
border: 0;
|
||||||
|
}
|
||||||
|
|
||||||
|
// Groups of fields with labels on top (legends)
|
||||||
|
legend {
|
||||||
|
display: block;
|
||||||
|
width: 100%;
|
||||||
|
padding: 0;
|
||||||
|
margin-bottom: $baseLineHeight * 1.5;
|
||||||
|
font-size: $baseFontSize * 1.5;
|
||||||
|
line-height: $baseLineHeight * 2;
|
||||||
|
color: $grayDark;
|
||||||
|
border: 0;
|
||||||
|
border-bottom: 1px solid #eee;
|
||||||
|
|
||||||
|
// Small
|
||||||
|
small {
|
||||||
|
font-size: $baseLineHeight * .75;
|
||||||
|
color: $grayLight;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
// Set font for forms
|
||||||
|
label, input, button, select, textarea {
|
||||||
|
@include font-shorthand($baseFontSize, normal, $baseLineHeight); // Set size, weight, line-height here
|
||||||
|
}
|
||||||
|
|
||||||
|
input, button, select, textarea {
|
||||||
|
@include font-family-sans-serif(); // And only set font-family here for those that need it (note the missing label element)
|
||||||
|
}
|
||||||
|
|
||||||
|
// Identify controls by their labels
|
||||||
|
label {
|
||||||
|
display: block;
|
||||||
|
margin-bottom: 5px;
|
||||||
|
color: $grayDark;
|
||||||
|
}
|
||||||
|
|
||||||
|
// Inputs, Textareas, Selects
|
||||||
|
input, textarea, select, .uneditable-input {
|
||||||
|
display: inline-block;
|
||||||
|
width: 210px;
|
||||||
|
height: $baseLineHeight;
|
||||||
|
padding: 4px;
|
||||||
|
margin-bottom: 9px;
|
||||||
|
font-size: $baseFontSize;
|
||||||
|
line-height: $baseLineHeight;
|
||||||
|
color: $gray;
|
||||||
|
border: 1px solid #ccc;
|
||||||
|
@include border-radius(3px);
|
||||||
|
}
|
||||||
|
.uneditable-textarea {
|
||||||
|
width: auto;
|
||||||
|
height: auto;
|
||||||
|
}
|
||||||
|
|
||||||
|
// Inputs within a label
|
||||||
|
label input, label textarea, label select {
|
||||||
|
display: block;
|
||||||
|
}
|
||||||
|
|
||||||
|
// Mini reset for unique input types
|
||||||
|
input[type="image"], input[type="checkbox"], input[type="radio"] {
|
||||||
|
width: auto;
|
||||||
|
height: auto;
|
||||||
|
padding: 0;
|
||||||
|
margin: 3px 0;
|
||||||
|
*margin-top: 0; /* IE7 */
|
||||||
|
line-height: normal;
|
||||||
|
cursor: pointer;
|
||||||
|
@include border-radius(0);
|
||||||
|
border: 0 \9; /* IE9 and down */
|
||||||
|
}
|
||||||
|
input[type="image"] {
|
||||||
|
border: 0;
|
||||||
|
}
|
||||||
|
|
||||||
|
// Reset the file input to browser defaults
|
||||||
|
input[type="file"] {
|
||||||
|
width: auto;
|
||||||
|
padding: initial;
|
||||||
|
line-height: initial;
|
||||||
|
border: initial;
|
||||||
|
background-color: $white;
|
||||||
|
background-color: initial;
|
||||||
|
@include box-shadow(none);
|
||||||
|
}
|
||||||
|
|
||||||
|
// Help out input buttons
|
||||||
|
input[type="button"], input[type="reset"], input[type="submit"] {
|
||||||
|
width: auto;
|
||||||
|
height: auto;
|
||||||
|
}
|
||||||
|
|
||||||
|
// Set the height of select and file controls to match text inputs
|
||||||
|
select, input[type="file"] {
|
||||||
|
height: 28px; /* In IE7, the height of the select element cannot be changed by height, only font-size */
|
||||||
|
*margin-top: 4px; /* For IE7, add top margin to align select with labels */
|
||||||
|
line-height: 28px;
|
||||||
|
}
|
||||||
|
|
||||||
|
// Reset line-height for IE
|
||||||
|
input[type="file"] {
|
||||||
|
line-height: 18px \9;
|
||||||
|
}
|
||||||
|
|
||||||
|
// Chrome on Linux and Mobile Safari need background-color
|
||||||
|
select {
|
||||||
|
width: 220px; // default input width + 10px of padding that doesn't get applied
|
||||||
|
background-color: $white;
|
||||||
|
}
|
||||||
|
|
||||||
|
// Make multiple select elements height not fixed
|
||||||
|
select[multiple], select[size] {
|
||||||
|
height: auto;
|
||||||
|
}
|
||||||
|
|
||||||
|
// Remove shadow from image inputs
|
||||||
|
input[type="image"] {
|
||||||
|
@include box-shadow(none);
|
||||||
|
}
|
||||||
|
|
||||||
|
// Make textarea height behave
|
||||||
|
textarea {
|
||||||
|
height: auto;
|
||||||
|
}
|
||||||
|
|
||||||
|
// Hidden inputs
|
||||||
|
input[type="hidden"] {
|
||||||
|
display: none;
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
// CHECKBOXES & RADIOS
|
||||||
|
// -------------------
|
||||||
|
|
||||||
|
// Indent the labels to position radios/checkboxes as hanging
|
||||||
|
.radio, .checkbox {
|
||||||
|
padding-left: 18px;
|
||||||
|
}
|
||||||
|
.radio input[type="radio"], .checkbox input[type="checkbox"] {
|
||||||
|
float: left;
|
||||||
|
margin-left: -18px;
|
||||||
|
}
|
||||||
|
|
||||||
|
// Move the options list down to align with labels
|
||||||
|
.controls > .radio:first-child, .controls > .checkbox:first-child {
|
||||||
|
padding-top: 5px; // has to be padding because margin collaspes
|
||||||
|
}
|
||||||
|
|
||||||
|
// Radios and checkboxes on same line
|
||||||
|
// TODO v3: Convert .inline to .control-inline
|
||||||
|
.radio.inline, .checkbox.inline {
|
||||||
|
display: inline-block;
|
||||||
|
padding-top: 5px;
|
||||||
|
margin-bottom: 0;
|
||||||
|
vertical-align: middle;
|
||||||
|
}
|
||||||
|
.radio.inline + .radio.inline, .checkbox.inline + .checkbox.inline {
|
||||||
|
margin-left: 10px; // space out consecutive inline controls
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
// FOCUS STATE
|
||||||
|
// -----------
|
||||||
|
|
||||||
|
input, textarea {
|
||||||
|
@include box-shadow(inset 0 1px 1px rgba(0,0,0,.075));
|
||||||
|
$transition: border linear .2s, box-shadow linear .2s;
|
||||||
|
@include transition($transition);
|
||||||
|
}
|
||||||
|
input:focus, textarea:focus {
|
||||||
|
border-color: rgba(82,168,236,.8);
|
||||||
|
$shadow: inset 0 1px 1px rgba(0,0,0,.075), 0 0 8px rgba(82,168,236,.6);
|
||||||
|
@include box-shadow($shadow);
|
||||||
|
outline: 0;
|
||||||
|
outline: thin dotted \9; /* IE6-9 */
|
||||||
|
}
|
||||||
|
input[type="file"]:focus, input[type="radio"]:focus, input[type="checkbox"]:focus, select:focus {
|
||||||
|
@include box-shadow(none); // override for file inputs
|
||||||
|
@include tab-focus();
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
// INPUT SIZES
|
||||||
|
// -----------
|
||||||
|
|
||||||
|
// General classes for quick sizes
|
||||||
|
.input-mini { width: 60px; }
|
||||||
|
.input-small { width: 90px; }
|
||||||
|
.input-medium { width: 150px; }
|
||||||
|
.input-large { width: 210px; }
|
||||||
|
.input-xlarge { width: 270px; }
|
||||||
|
.input-xxlarge { width: 530px; }
|
||||||
|
|
||||||
|
// Grid style input sizes
|
||||||
|
input[class*="span"], select[class*="span"], textarea[class*="span"], .uneditable-input {
|
||||||
|
float: none;
|
||||||
|
margin-left: 0;
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
// GRID SIZING FOR INPUTS
|
||||||
|
// ----------------------
|
||||||
|
|
||||||
|
@include inputGridSystemGenerate($gridColumns, $gridColumnWidth, $gridGutterWidth);
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
// DISABLED STATE
|
||||||
|
// --------------
|
||||||
|
|
||||||
|
// Disabled and read-only inputs
|
||||||
|
input[disabled], select[disabled], textarea[disabled], input[readonly], select[readonly], textarea[readonly] {
|
||||||
|
background-color: #f5f5f5;
|
||||||
|
border-color: #ddd;
|
||||||
|
cursor: not-allowed;
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
// FORM FIELD FEEDBACK STATES
|
||||||
|
// --------------------------
|
||||||
|
|
||||||
|
// Warning
|
||||||
|
.control-group.warning {
|
||||||
|
@include formFieldState($warningText, $warningText, $warningBackground);
|
||||||
|
}
|
||||||
|
// Error
|
||||||
|
.control-group.error {
|
||||||
|
@include formFieldState($errorText, $errorText, $errorBackground);
|
||||||
|
}
|
||||||
|
// Success
|
||||||
|
.control-group.success {
|
||||||
|
@include formFieldState($successText, $successText, $successBackground);
|
||||||
|
}
|
||||||
|
|
||||||
|
// HTML5 invalid states
|
||||||
|
// Shares styles with the .control-group.error above
|
||||||
|
input:focus:required:invalid, textarea:focus:required:invalid, select:focus:required:invalid {
|
||||||
|
color: #b94a48;
|
||||||
|
border-color: #ee5f5b;
|
||||||
|
&:focus {
|
||||||
|
border-color: darken(#ee5f5b, 10%);
|
||||||
|
@include box-shadow(0 0 6px lighten(#ee5f5b, 20%));
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
// FORM ACTIONS
|
||||||
|
// ------------
|
||||||
|
|
||||||
|
.form-actions {
|
||||||
|
padding: ($baseLineHeight - 1) 20px $baseLineHeight;
|
||||||
|
margin-top: $baseLineHeight;
|
||||||
|
margin-bottom: $baseLineHeight;
|
||||||
|
background-color: #f5f5f5;
|
||||||
|
border-top: 1px solid #ddd;
|
||||||
|
}
|
||||||
|
|
||||||
|
// For text that needs to appear as an input but should not be an input
|
||||||
|
.uneditable-input {
|
||||||
|
display: block;
|
||||||
|
background-color: $white;
|
||||||
|
border-color: #eee;
|
||||||
|
@include box-shadow(inset 0 1px 2px rgba(0,0,0,.025));
|
||||||
|
cursor: not-allowed;
|
||||||
|
}
|
||||||
|
|
||||||
|
// Placeholder text gets special styles; can't be bundled together though for some reason
|
||||||
|
@include placeholder($grayLight);
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
// HELP TEXT
|
||||||
|
// ---------
|
||||||
|
|
||||||
|
.help-block {
|
||||||
|
display: block; // account for any element using help-block
|
||||||
|
margin-top: 5px;
|
||||||
|
margin-bottom: 0;
|
||||||
|
color: $grayLight;
|
||||||
|
}
|
||||||
|
|
||||||
|
.help-inline {
|
||||||
|
display: inline-block;
|
||||||
|
@include ie7-inline-block();
|
||||||
|
margin-bottom: 9px;
|
||||||
|
vertical-align: middle;
|
||||||
|
padding-left: 5px;
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
// INPUT GROUPS
|
||||||
|
// ------------
|
||||||
|
|
||||||
|
// Allow us to put symbols and text within the input field for a cleaner look
|
||||||
|
.input-prepend, .input-append {
|
||||||
|
margin-bottom: 5px;
|
||||||
|
@include clearfix(); // Clear the float to prevent wrapping
|
||||||
|
input, .uneditable-input {
|
||||||
|
@include border-radius(0 3px 3px 0);
|
||||||
|
&:focus {
|
||||||
|
position: relative;
|
||||||
|
z-index: 2;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
.uneditable-input {
|
||||||
|
border-left-color: #eee;
|
||||||
|
border-right-color: #ccc;
|
||||||
|
}
|
||||||
|
.add-on {
|
||||||
|
float: left;
|
||||||
|
display: block;
|
||||||
|
width: auto;
|
||||||
|
min-width: 16px;
|
||||||
|
height: $baseLineHeight;
|
||||||
|
margin-right: -1px;
|
||||||
|
padding: 4px 5px;
|
||||||
|
font-weight: normal;
|
||||||
|
line-height: $baseLineHeight;
|
||||||
|
color: $grayLight;
|
||||||
|
text-align: center;
|
||||||
|
text-shadow: 0 1px 0 $white;
|
||||||
|
background-color: #f5f5f5;
|
||||||
|
border: 1px solid #ccc;
|
||||||
|
@include border-radius(3px 0 0 3px);
|
||||||
|
}
|
||||||
|
.active {
|
||||||
|
background-color: lighten($green, 30);
|
||||||
|
border-color: $green;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
.input-prepend {
|
||||||
|
.add-on {
|
||||||
|
*margin-top: 1px; /* IE6-7 */
|
||||||
|
}
|
||||||
|
}
|
||||||
|
.input-append {
|
||||||
|
input, .uneditable-input {
|
||||||
|
float: left;
|
||||||
|
@include border-radius(3px 0 0 3px);
|
||||||
|
}
|
||||||
|
.uneditable-input {
|
||||||
|
border-right-color: #ccc;
|
||||||
|
}
|
||||||
|
.add-on {
|
||||||
|
margin-right: 0;
|
||||||
|
margin-left: -1px;
|
||||||
|
@include border-radius(0 3px 3px 0);
|
||||||
|
}
|
||||||
|
input:first-child {
|
||||||
|
// In IE7, having a hasLayout container (from clearfix's zoom:1) can make the first input
|
||||||
|
// inherit the sum of its ancestors' margins.
|
||||||
|
*margin-left: -160px;
|
||||||
|
|
||||||
|
&+.add-on {
|
||||||
|
*margin-left: -21px;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
// SEARCH FORM
|
||||||
|
// -----------
|
||||||
|
|
||||||
|
.search-query {
|
||||||
|
padding-left: 14px;
|
||||||
|
padding-right: 14px;
|
||||||
|
margin-bottom: 0; // remove the default margin on all inputs
|
||||||
|
@include border-radius(14px);
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
// HORIZONTAL & VERTICAL FORMS
|
||||||
|
// ---------------------------
|
||||||
|
|
||||||
|
// Common properties
|
||||||
|
// -----------------
|
||||||
|
|
||||||
|
.form-search, .form-inline, .form-horizontal {
|
||||||
|
input, textarea, select, .help-inline, .uneditable-input {
|
||||||
|
display: inline-block;
|
||||||
|
margin-bottom: 0;
|
||||||
|
}
|
||||||
|
// Re-hide elemnts due to specifity
|
||||||
|
.hide { display: none; }
|
||||||
|
}
|
||||||
|
.form-search label, .form-inline label, .form-search .input-append, .form-inline .input-append, .form-search .input-prepend, .form-inline .input-prepend {
|
||||||
|
display: inline-block;
|
||||||
|
}
|
||||||
|
// Make the prepend and append add-on vertical-align: middle;
|
||||||
|
.form-search .input-append .add-on, .form-inline .input-prepend .add-on, .form-search .input-append .add-on, .form-inline .input-prepend .add-on {
|
||||||
|
vertical-align: middle;
|
||||||
|
}
|
||||||
|
// Inline checkbox/radio labels
|
||||||
|
.form-search .radio, .form-inline .radio, .form-search .checkbox, .form-inline .checkbox {
|
||||||
|
margin-bottom: 0;
|
||||||
|
vertical-align: middle;
|
||||||
|
}
|
||||||
|
|
||||||
|
// Margin to space out fieldsets
|
||||||
|
.control-group {
|
||||||
|
margin-bottom: $baseLineHeight / 2;
|
||||||
|
}
|
||||||
|
|
||||||
|
// Legend collapses margin, so next elements is responsible for spacing
|
||||||
|
legend + .control-group {
|
||||||
|
margin-top: $baseLineHeight;
|
||||||
|
-webkit-margin-top-collapse: separate;
|
||||||
|
}
|
||||||
|
|
||||||
|
// Horizontal-specific styles
|
||||||
|
// --------------------------
|
||||||
|
|
||||||
|
.form-horizontal {
|
||||||
|
// Increase spacing between groups
|
||||||
|
.control-group {
|
||||||
|
margin-bottom: $baseLineHeight;
|
||||||
|
@include clearfix();
|
||||||
|
}
|
||||||
|
// Float the labels left
|
||||||
|
.control-label {
|
||||||
|
float: left;
|
||||||
|
width: 140px;
|
||||||
|
padding-top: 5px;
|
||||||
|
text-align: right;
|
||||||
|
}
|
||||||
|
// Move over all input controls and content
|
||||||
|
.controls {
|
||||||
|
margin-left: 160px;
|
||||||
|
}
|
||||||
|
// Move over buttons in .form-actions to align with .controls
|
||||||
|
.form-actions {
|
||||||
|
padding-left: 160px;
|
||||||
|
}
|
||||||
|
}
|
@ -0,0 +1,8 @@
|
|||||||
|
// GRID SYSTEM
|
||||||
|
// -----------
|
||||||
|
|
||||||
|
// Fixed (940px)
|
||||||
|
@include gridSystemGenerate($gridColumns, $gridColumnWidth, $gridGutterWidth);
|
||||||
|
|
||||||
|
// Fluid (940px)
|
||||||
|
@include fluidGridSystemGenerate($gridColumns, $fluidGridColumnWidth, $fluidGridGutterWidth);
|
@ -0,0 +1,20 @@
|
|||||||
|
// HERO UNIT
|
||||||
|
// ---------
|
||||||
|
|
||||||
|
.hero-unit {
|
||||||
|
padding: 60px;
|
||||||
|
margin-bottom: 30px;
|
||||||
|
background-color: #f5f5f5;
|
||||||
|
@include border-radius(6px);
|
||||||
|
h1 {
|
||||||
|
margin-bottom: 0;
|
||||||
|
font-size: 60px;
|
||||||
|
line-height: 1;
|
||||||
|
letter-spacing: -1px;
|
||||||
|
}
|
||||||
|
p {
|
||||||
|
font-size: 18px;
|
||||||
|
font-weight: 200;
|
||||||
|
line-height: $baseLineHeight * 1.5;
|
||||||
|
}
|
||||||
|
}
|
32
xstatic/pkg/bootstrap_scss/data/scss/bootstrap/_labels.scss
Normal file
32
xstatic/pkg/bootstrap_scss/data/scss/bootstrap/_labels.scss
Normal file
@ -0,0 +1,32 @@
|
|||||||
|
// LABELS
|
||||||
|
// ------
|
||||||
|
|
||||||
|
// Base
|
||||||
|
.label {
|
||||||
|
padding: 2px 4px 3px;
|
||||||
|
font-size: $baseFontSize * .85;
|
||||||
|
font-weight: bold;
|
||||||
|
color: $white;
|
||||||
|
text-shadow: 0 -1px 0 rgba(0,0,0,.25);
|
||||||
|
background-color: $grayLight;
|
||||||
|
@include border-radius(3px);
|
||||||
|
}
|
||||||
|
|
||||||
|
// Hover state
|
||||||
|
.label:hover {
|
||||||
|
color: $white;
|
||||||
|
text-decoration: none;
|
||||||
|
}
|
||||||
|
|
||||||
|
// Colors
|
||||||
|
.label-important { background-color: $errorText; }
|
||||||
|
.label-important:hover { background-color: darken($errorText, 10%); }
|
||||||
|
|
||||||
|
.label-warning { background-color: $orange; }
|
||||||
|
.label-warning:hover { background-color: darken($orange, 10%); }
|
||||||
|
|
||||||
|
.label-success { background-color: $successText; }
|
||||||
|
.label-success:hover { background-color: darken($successText, 10%); }
|
||||||
|
|
||||||
|
.label-info { background-color: $infoText; }
|
||||||
|
.label-info:hover { background-color: darken($infoText, 10%); }
|
17
xstatic/pkg/bootstrap_scss/data/scss/bootstrap/_layouts.scss
Normal file
17
xstatic/pkg/bootstrap_scss/data/scss/bootstrap/_layouts.scss
Normal file
@ -0,0 +1,17 @@
|
|||||||
|
//
|
||||||
|
// Layouts
|
||||||
|
// Fixed-width and fluid (with sidebar) layouts
|
||||||
|
// --------------------------------------------
|
||||||
|
|
||||||
|
|
||||||
|
// Container (centered, fixed-width layouts)
|
||||||
|
.container {
|
||||||
|
@include container-fixed();
|
||||||
|
}
|
||||||
|
|
||||||
|
// Fluid layouts (left aligned, with sidebar, min- & max-width content)
|
||||||
|
.container-fluid {
|
||||||
|
padding-left: $gridGutterWidth;
|
||||||
|
padding-right: $gridGutterWidth;
|
||||||
|
@include clearfix();
|
||||||
|
}
|
530
xstatic/pkg/bootstrap_scss/data/scss/bootstrap/_mixins.scss
Normal file
530
xstatic/pkg/bootstrap_scss/data/scss/bootstrap/_mixins.scss
Normal file
@ -0,0 +1,530 @@
|
|||||||
|
// Mixins.less
|
||||||
|
// Snippets of reusable CSS to develop faster and keep code readable
|
||||||
|
// -----------------------------------------------------------------
|
||||||
|
|
||||||
|
|
||||||
|
// UTILITY MIXINS
|
||||||
|
// --------------------------------------------------
|
||||||
|
|
||||||
|
// Clearfix
|
||||||
|
// --------
|
||||||
|
// For clearing floats like a boss h5bp.com/q
|
||||||
|
@mixin clearfix() {
|
||||||
|
*zoom: 1;
|
||||||
|
&:before,
|
||||||
|
&:after {
|
||||||
|
display: table;
|
||||||
|
content: "";
|
||||||
|
}
|
||||||
|
&:after {
|
||||||
|
clear: both;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
.clearfix { @include clearfix(); }
|
||||||
|
|
||||||
|
// Webkit-style focus
|
||||||
|
// ------------------
|
||||||
|
@mixin tab-focus() {
|
||||||
|
// Default
|
||||||
|
outline: thin dotted #333;
|
||||||
|
// Webkit
|
||||||
|
outline: 5px auto -webkit-focus-ring-color;
|
||||||
|
outline-offset: -2px;
|
||||||
|
}
|
||||||
|
|
||||||
|
// Center-align a block level element
|
||||||
|
// ----------------------------------
|
||||||
|
@mixin center-block() {
|
||||||
|
display: block;
|
||||||
|
margin-left: auto;
|
||||||
|
margin-right: auto;
|
||||||
|
}
|
||||||
|
|
||||||
|
// IE7 inline-block
|
||||||
|
// ----------------
|
||||||
|
@mixin ie7-inline-block() {
|
||||||
|
*display: inline; /* IE7 inline-block hack */
|
||||||
|
*zoom: 1;
|
||||||
|
}
|
||||||
|
|
||||||
|
// IE7 likes to collapse whitespace on either side of the inline-block elements.
|
||||||
|
// Ems because we're attempting to match the width of a space character. Left
|
||||||
|
// version is for form buttons, which typically come after other elements, and
|
||||||
|
// right version is for icons, which come before. Applying both is ok, but it will
|
||||||
|
// mean that space between those elements will be .6em (~2 space characters) in IE7,
|
||||||
|
// instead of the 1 space in other browsers.
|
||||||
|
@mixin ie7-restore-left-whitespace() {
|
||||||
|
*margin-left: .3em;
|
||||||
|
|
||||||
|
&:first-child {
|
||||||
|
*margin-left: 0;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
@mixin ie7-restore-right-whitespace() {
|
||||||
|
*margin-right: .3em;
|
||||||
|
|
||||||
|
&:last-child {
|
||||||
|
*margin-left: 0;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
// Sizing shortcuts
|
||||||
|
// -------------------------
|
||||||
|
@mixin size($height: 5px, $width: 5px) {
|
||||||
|
width: $width;
|
||||||
|
height: $height;
|
||||||
|
}
|
||||||
|
@mixin square($size: 5px) {
|
||||||
|
@include size($size, $size);
|
||||||
|
}
|
||||||
|
|
||||||
|
// Placeholder text
|
||||||
|
// -------------------------
|
||||||
|
@mixin placeholder($color: $placeholderText) {
|
||||||
|
:-moz-placeholder {
|
||||||
|
color: $color;
|
||||||
|
}
|
||||||
|
::-webkit-input-placeholder {
|
||||||
|
color: $color;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
// Text overflow
|
||||||
|
// ------------------------
|
||||||
|
@mixin text-overflow() {
|
||||||
|
overflow: hidden;
|
||||||
|
text-overflow: ellipsis;
|
||||||
|
white-space: nowrap;
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
// FONTS
|
||||||
|
// --------------------------------------------------
|
||||||
|
@mixin font-family-serif() {
|
||||||
|
font-family: Georgia, "Times New Roman", Times, serif;
|
||||||
|
}
|
||||||
|
@mixin font-family-sans-serif() {
|
||||||
|
font-family: "Helvetica Neue", Helvetica, Arial, sans-serif;
|
||||||
|
}
|
||||||
|
@mixin font-family-monospace() {
|
||||||
|
font-family: Menlo, Monaco, "Courier New", monospace;
|
||||||
|
}
|
||||||
|
@mixin font-shorthand($size: $baseFontSize, $weight: normal, $lineHeight: $baseLineHeight) {
|
||||||
|
font-size: $size;
|
||||||
|
font-weight: $weight;
|
||||||
|
line-height: $lineHeight;
|
||||||
|
}
|
||||||
|
@mixin font-serif($size: $baseFontSize, $weight: normal, $lineHeight: $baseLineHeight) {
|
||||||
|
@include font-family-serif();
|
||||||
|
@include font-shorthand($size, $weight, $lineHeight);
|
||||||
|
}
|
||||||
|
@mixin font-sans-serif($size: $baseFontSize, $weight: normal, $lineHeight: $baseLineHeight) {
|
||||||
|
@include font-family-sans-serif();
|
||||||
|
@include font-shorthand($size, $weight, $lineHeight);
|
||||||
|
}
|
||||||
|
@mixin font-monospace($size: $baseFontSize, $weight: normal, $lineHeight: $baseLineHeight) {
|
||||||
|
@include font-family-monospace();
|
||||||
|
@include font-shorthand($size, $weight, $lineHeight);
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
// GRID SYSTEM
|
||||||
|
// --------------------------------------------------
|
||||||
|
|
||||||
|
// Site container
|
||||||
|
// -------------------------
|
||||||
|
@mixin container-fixed() {
|
||||||
|
width: $gridRowWidth;
|
||||||
|
margin-left: auto;
|
||||||
|
margin-right: auto;
|
||||||
|
@include clearfix();
|
||||||
|
}
|
||||||
|
|
||||||
|
// Le grid system
|
||||||
|
// -------------------------
|
||||||
|
|
||||||
|
// Setup the mixins to be used
|
||||||
|
@mixin gridSystemColumns($gridGutterWidth, $gridColumnWidth, $gridRowWidth, $columns) {
|
||||||
|
width: ($gridColumnWidth * $columns) + ($gridGutterWidth * ($columns - 1));
|
||||||
|
}
|
||||||
|
@mixin gridSystemOffset($gridColumnWidth, $gridGutterWidth, $columns) {
|
||||||
|
margin-left: ($gridColumnWidth * $columns) + ($gridGutterWidth * ($columns - 1)) + ($gridGutterWidth * 2);
|
||||||
|
}
|
||||||
|
@mixin gridSystemGridColumn($gridGutterWidth) {
|
||||||
|
float: left;
|
||||||
|
margin-left: $gridGutterWidth;
|
||||||
|
}
|
||||||
|
// Take these values and mixins, and make 'em do their thang
|
||||||
|
@mixin gridSystemGenerate($gridColumns, $gridColumnWidth, $gridGutterWidth) {
|
||||||
|
// Row surrounds the columns
|
||||||
|
.row {
|
||||||
|
margin-left: $gridGutterWidth * -1;
|
||||||
|
@include clearfix();
|
||||||
|
}
|
||||||
|
// Find all .span# classes within .row and give them the necessary properties for grid columns (supported by all browsers back to IE7, thanks @dhg)
|
||||||
|
[class*="span"] {
|
||||||
|
@include gridSystemGridColumn($gridGutterWidth);
|
||||||
|
}
|
||||||
|
// Default columns
|
||||||
|
@for $i from 1 through $gridColumns {
|
||||||
|
.span#{$i} { @include gridSystemColumns($gridGutterWidth, $gridColumnWidth, $gridRowWidth, $i) }
|
||||||
|
}
|
||||||
|
.container { @include gridSystemColumns($gridGutterWidth, $gridColumnWidth, $gridRowWidth, $gridColumns) }
|
||||||
|
|
||||||
|
// Offset column options
|
||||||
|
@for $i from 1 through $gridColumns - 1 {
|
||||||
|
.offset#{$i} { @include gridSystemOffset($gridColumnWidth, $gridGutterWidth, $i) }
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
// Fluid grid system
|
||||||
|
// -------------------------
|
||||||
|
@mixin fluidGridSystemColumns($fluidGridGutterWidth, $fluidGridColumnWidth, $columns) {
|
||||||
|
width: ($fluidGridColumnWidth * $columns) + ($fluidGridGutterWidth * ($columns - 1));
|
||||||
|
}
|
||||||
|
@mixin fluidGridSystemGridColumn($fluidGridGutterWidth) {
|
||||||
|
float: left;
|
||||||
|
margin-left: $fluidGridGutterWidth;
|
||||||
|
}
|
||||||
|
// Take these values and mixins, and make 'em do their thang
|
||||||
|
@mixin fluidGridSystemGenerate($gridColumns, $fluidGridColumnWidth, $fluidGridGutterWidth) {
|
||||||
|
// Row surrounds the columns
|
||||||
|
.row-fluid {
|
||||||
|
width: 100%;
|
||||||
|
@include clearfix();
|
||||||
|
|
||||||
|
// Find all .span# classes within .row and give them the necessary properties for grid columns (supported by all browsers back to IE7, thanks @dhg)
|
||||||
|
> [class*="span"] {
|
||||||
|
@include fluidGridSystemGridColumn($fluidGridGutterWidth);
|
||||||
|
}
|
||||||
|
> [class*="span"]:first-child {
|
||||||
|
margin-left: 0;
|
||||||
|
}
|
||||||
|
// Default columns
|
||||||
|
@for $i from 1 through $gridColumns {
|
||||||
|
> .span#{$i} { @include fluidGridSystemColumns($fluidGridGutterWidth, $fluidGridColumnWidth, $i); }
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
// Input grid system
|
||||||
|
// -------------------------
|
||||||
|
@mixin inputGridSystemInputColumns($gridGutterWidth, $gridColumnWidth, $gridRowWidth, $columns) {
|
||||||
|
width: (($gridColumnWidth) * $columns) + ($gridGutterWidth * ($columns - 1)) - 10;
|
||||||
|
}
|
||||||
|
@mixin inputGridSystemGenerate($gridColumns, $gridColumnWidth, $gridGutterWidth) {
|
||||||
|
input, textarea, .uneditable-input {
|
||||||
|
@for $i from 1 through $gridColumns {
|
||||||
|
&.span#{$i} { @include inputGridSystemInputColumns($gridGutterWidth, $gridColumnWidth, $gridRowWidth, $i); }
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
// Make a grid
|
||||||
|
// -------------------------
|
||||||
|
// Use makeRow() and makeColumn() to assign semantic layouts grid system behaviour
|
||||||
|
@mixin makeRow() {
|
||||||
|
margin-left: $gridGutterWidth * -1;
|
||||||
|
@include clearfix();
|
||||||
|
}
|
||||||
|
@mixin makeColumn($columns: 1) {
|
||||||
|
float: left;
|
||||||
|
margin-left: $gridGutterWidth;
|
||||||
|
width: ($gridColumnWidth * $columns) + ($gridGutterWidth * ($columns - 1));
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
// Form field states (used in forms.less)
|
||||||
|
// --------------------------------------------------
|
||||||
|
|
||||||
|
// Mixin for form field states
|
||||||
|
@mixin formFieldState($textColor: #555, $borderColor: #ccc, $backgroundColor: #f5f5f5) {
|
||||||
|
// Set the text color
|
||||||
|
> label, .help-block, .help-inline {
|
||||||
|
color: $textColor;
|
||||||
|
}
|
||||||
|
// Style inputs accordingly
|
||||||
|
input, select, textarea {
|
||||||
|
color: $textColor;
|
||||||
|
border-color: $borderColor;
|
||||||
|
&:focus {
|
||||||
|
border-color: darken($borderColor, 10%);
|
||||||
|
@include box-shadow(0 0 6px lighten($borderColor, 20%));
|
||||||
|
}
|
||||||
|
}
|
||||||
|
// Give a small background color for input-prepend/-append
|
||||||
|
.input-prepend .add-on, .input-append .add-on {
|
||||||
|
color: $textColor;
|
||||||
|
background-color: $backgroundColor;
|
||||||
|
border-color: $textColor;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
// CSS3 PROPERTIES
|
||||||
|
// --------------------------------------------------
|
||||||
|
|
||||||
|
// Border Radius
|
||||||
|
@mixin border-radius($radius: 5px) {
|
||||||
|
-webkit-border-radius: $radius;
|
||||||
|
-moz-border-radius: $radius;
|
||||||
|
border-radius: $radius;
|
||||||
|
}
|
||||||
|
|
||||||
|
// Drop shadows
|
||||||
|
@mixin box-shadow($shadow: 0 1px 3px rgba(0,0,0,.25)) {
|
||||||
|
-webkit-box-shadow: $shadow;
|
||||||
|
-moz-box-shadow: $shadow;
|
||||||
|
box-shadow: $shadow;
|
||||||
|
}
|
||||||
|
|
||||||
|
// Transitions
|
||||||
|
@mixin transition($transition) {
|
||||||
|
-webkit-transition: $transition;
|
||||||
|
-moz-transition: $transition;
|
||||||
|
-ms-transition: $transition;
|
||||||
|
-o-transition: $transition;
|
||||||
|
transition: $transition;
|
||||||
|
}
|
||||||
|
|
||||||
|
// Transformations
|
||||||
|
@mixin rotate($degrees) {
|
||||||
|
-webkit-transform: rotate($degrees);
|
||||||
|
-moz-transform: rotate($degrees);
|
||||||
|
-ms-transform: rotate($degrees);
|
||||||
|
-o-transform: rotate($degrees);
|
||||||
|
transform: rotate($degrees);
|
||||||
|
}
|
||||||
|
@mixin scale($ratio) {
|
||||||
|
-webkit-transform: scale($ratio);
|
||||||
|
-moz-transform: scale($ratio);
|
||||||
|
-ms-transform: scale($ratio);
|
||||||
|
-o-transform: scale($ratio);
|
||||||
|
transform: scale($ratio);
|
||||||
|
}
|
||||||
|
@mixin translate($x: 0, $y: 0) {
|
||||||
|
-webkit-transform: translate($x, $y);
|
||||||
|
-moz-transform: translate($x, $y);
|
||||||
|
-ms-transform: translate($x, $y);
|
||||||
|
-o-transform: translate($x, $y);
|
||||||
|
transform: translate($x, $y);
|
||||||
|
}
|
||||||
|
|
||||||
|
@mixin skew($x: 0, $y: 0) {
|
||||||
|
-webkit-transform: skew($x, $y);
|
||||||
|
-moz-transform: skew($x, $y);
|
||||||
|
-ms-transform: skew($x, $y);
|
||||||
|
-o-transform: skew($x, $y);
|
||||||
|
transform: skew($x, $y);
|
||||||
|
}
|
||||||
|
|
||||||
|
@mixin translate3d($x: 0, $y: 0, $z: 0) {
|
||||||
|
-webkit-transform: translate($x, $y, $z);
|
||||||
|
-moz-transform: translate($x, $y, $z);
|
||||||
|
-ms-transform: translate($x, $y, $z);
|
||||||
|
-o-transform: translate($x, $y, $z);
|
||||||
|
transform: translate($x, $y, $z);
|
||||||
|
}
|
||||||
|
|
||||||
|
// Background clipping
|
||||||
|
// Heads up: FF 3.6 and under need "padding" instead of "padding-box"
|
||||||
|
@mixin background-clip($clip) {
|
||||||
|
-webkit-background-clip: $clip;
|
||||||
|
-moz-background-clip: $clip;
|
||||||
|
background-clip: $clip;
|
||||||
|
}
|
||||||
|
|
||||||
|
// Background sizing
|
||||||
|
@mixin background-size($size){
|
||||||
|
-webkit-background-size: $size;
|
||||||
|
-moz-background-size: $size;
|
||||||
|
-o-background-size: $size;
|
||||||
|
background-size: $size;
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
// Box sizing
|
||||||
|
@mixin box-sizing($boxmodel) {
|
||||||
|
-webkit-box-sizing: $boxmodel;
|
||||||
|
-moz-box-sizing: $boxmodel;
|
||||||
|
box-sizing: $boxmodel;
|
||||||
|
}
|
||||||
|
|
||||||
|
// User select
|
||||||
|
// For selecting text on the page
|
||||||
|
@mixin user-select($select) {
|
||||||
|
-webkit-user-select: $select;
|
||||||
|
-moz-user-select: $select;
|
||||||
|
-o-user-select: $select;
|
||||||
|
user-select: $select;
|
||||||
|
}
|
||||||
|
|
||||||
|
// Resize anything
|
||||||
|
@mixin resizable($direction: both) {
|
||||||
|
resize: $direction; // Options: horizontal, vertical, both
|
||||||
|
overflow: auto; // Safari fix
|
||||||
|
}
|
||||||
|
|
||||||
|
// CSS3 Content Columns
|
||||||
|
@mixin content-columns($columnCount, $columnGap: $gridColumnGutter) {
|
||||||
|
-webkit-column-count: $columnCount;
|
||||||
|
-moz-column-count: $columnCount;
|
||||||
|
column-count: $columnCount;
|
||||||
|
-webkit-column-gap: $columnGap;
|
||||||
|
-moz-column-gap: $columnGap;
|
||||||
|
column-gap: $columnGap;
|
||||||
|
}
|
||||||
|
|
||||||
|
// Opacity
|
||||||
|
@mixin opacity($opacity: 1) {
|
||||||
|
opacity: $opacity;
|
||||||
|
filter: alpha(opacity=$opacity * 100);
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
// BACKGROUNDS
|
||||||
|
// --------------------------------------------------
|
||||||
|
|
||||||
|
// Add an alphatransparency value to any background or border color (via Elyse Holladay)
|
||||||
|
@mixin translucent-background($color: $white, $alpha: 1) {
|
||||||
|
background-color: hsla(hue($color), saturation($color), lightness($color), $alpha);
|
||||||
|
}
|
||||||
|
@mixin translucent-border($color: $white, $alpha: 1) {
|
||||||
|
border-color: hsla(hue($color), saturation($color), lightness($color), $alpha);
|
||||||
|
@include background-clip(padding-box);
|
||||||
|
}
|
||||||
|
|
||||||
|
// Gradient Bar Colors for buttons and alerts
|
||||||
|
@mixin gradientBar($primaryColor, $secondaryColor) {
|
||||||
|
@include gradient-vertical($primaryColor, $secondaryColor);
|
||||||
|
border-color: $secondaryColor $secondaryColor darken($secondaryColor, 15%);
|
||||||
|
border-color: rgba(0,0,0,.1) rgba(0,0,0,.1) fadein(rgba(0,0,0,.1), 15%);
|
||||||
|
}
|
||||||
|
|
||||||
|
// Gradients
|
||||||
|
@mixin gradient-horizontal($startColor: #555, $endColor: #333) {
|
||||||
|
background-color: $endColor;
|
||||||
|
background-image: -moz-linear-gradient(left, $startColor, $endColor); // FF 3.6+
|
||||||
|
background-image: -ms-linear-gradient(left, $startColor, $endColor); // IE10
|
||||||
|
background-image: -webkit-gradient(linear, 0 0, 100% 0, from($startColor), to($endColor)); // Safari 4+, Chrome 2+
|
||||||
|
background-image: -webkit-linear-gradient(left, $startColor, $endColor); // Safari 5.1+, Chrome 10+
|
||||||
|
background-image: -o-linear-gradient(left, $startColor, $endColor); // Opera 11.10
|
||||||
|
background-image: linear-gradient(left, $startColor, $endColor); // Le standard
|
||||||
|
background-repeat: repeat-x;
|
||||||
|
filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#{ie-hex-str($startColor)}', endColorstr='#{ie-hex-str($endColor)}', GradientType=1); // IE9 and down
|
||||||
|
}
|
||||||
|
@mixin gradient-vertical($startColor: #555, $endColor: #333) {
|
||||||
|
background-color: mix($startColor, $endColor, 60%);
|
||||||
|
background-image: -moz-linear-gradient(top, $startColor, $endColor); // FF 3.6+
|
||||||
|
background-image: -ms-linear-gradient(top, $startColor, $endColor); // IE10
|
||||||
|
background-image: -webkit-gradient(linear, 0 0, 0 100%, from($startColor), to($endColor)); // Safari 4+, Chrome 2+
|
||||||
|
background-image: -webkit-linear-gradient(top, $startColor, $endColor); // Safari 5.1+, Chrome 10+
|
||||||
|
background-image: -o-linear-gradient(top, $startColor, $endColor); // Opera 11.10
|
||||||
|
background-image: linear-gradient(top, $startColor, $endColor); // The standard
|
||||||
|
background-repeat: repeat-x;
|
||||||
|
filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#{ie-hex-str($startColor)}', endColorstr='#{ie-hex-str($endColor)}', GradientType=0); // IE9 and down
|
||||||
|
}
|
||||||
|
@mixin gradient-directional($startColor: #555, $endColor: #333, $deg: 45deg) {
|
||||||
|
background-color: $endColor;
|
||||||
|
background-repeat: repeat-x;
|
||||||
|
background-image: -moz-linear-gradient($deg, $startColor, $endColor); // FF 3.6+
|
||||||
|
background-image: -ms-linear-gradient($deg, $startColor, $endColor); // IE10
|
||||||
|
background-image: -webkit-linear-gradient($deg, $startColor, $endColor); // Safari 5.1+, Chrome 10+
|
||||||
|
background-image: -o-linear-gradient($deg, $startColor, $endColor); // Opera 11.10
|
||||||
|
background-image: linear-gradient($deg, $startColor, $endColor); // The standard
|
||||||
|
}
|
||||||
|
@mixin gradient-vertical-three-colors($startColor: #00b3ee, $midColor: #7a43b6, $colorStop: 50%, $endColor: #c3325f) {
|
||||||
|
background-color: mix($midColor, $endColor, 80%);
|
||||||
|
background-image: -webkit-gradient(linear, 0 0, 0 100%, from($startColor), color-stop($colorStop, $midColor), to($endColor));
|
||||||
|
background-image: -webkit-linear-gradient($startColor, $midColor $colorStop, $endColor);
|
||||||
|
background-image: -moz-linear-gradient(top, $startColor, $midColor $colorStop, $endColor);
|
||||||
|
background-image: -ms-linear-gradient($startColor, $midColor $colorStop, $endColor);
|
||||||
|
background-image: -o-linear-gradient($startColor, $midColor $colorStop, $endColor);
|
||||||
|
background-image: linear-gradient($startColor, $midColor $colorStop, $endColor);
|
||||||
|
background-repeat: no-repeat;
|
||||||
|
filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#{ie-hex-str($startColor)}', endColorstr='#{ie-hex-str($endColor)}', GradientType=0); // IE9 and down, gets no color-stop at all for proper fallback
|
||||||
|
}
|
||||||
|
@mixin gradient-radial($innerColor: #555, $outerColor: #333) {
|
||||||
|
background-color: $outerColor;
|
||||||
|
background-image: -webkit-gradient(radial, center center, 0, center center, 460, from($innerColor), to($outerColor));
|
||||||
|
background-image: -webkit-radial-gradient(circle, $innerColor, $outerColor);
|
||||||
|
background-image: -moz-radial-gradient(circle, $innerColor, $outerColor);
|
||||||
|
background-image: -ms-radial-gradient(circle, $innerColor, $outerColor);
|
||||||
|
background-repeat: no-repeat;
|
||||||
|
// Opera cannot do radial gradients yet
|
||||||
|
}
|
||||||
|
@mixin gradient-striped($color, $angle: -45deg) {
|
||||||
|
background-color: $color;
|
||||||
|
background-image: -webkit-gradient(linear, 0 100%, 100% 0, color-stop(.25, rgba(255,255,255,.15)), color-stop(.25, transparent), color-stop(.5, transparent), color-stop(.5, rgba(255,255,255,.15)), color-stop(.75, rgba(255,255,255,.15)), color-stop(.75, transparent), to(transparent));
|
||||||
|
background-image: -webkit-linear-gradient($angle, rgba(255,255,255,.15) 25%, transparent 25%, transparent 50%, rgba(255,255,255,.15) 50%, rgba(255,255,255,.15) 75%, transparent 75%, transparent);
|
||||||
|
background-image: -moz-linear-gradient($angle, rgba(255,255,255,.15) 25%, transparent 25%, transparent 50%, rgba(255,255,255,.15) 50%, rgba(255,255,255,.15) 75%, transparent 75%, transparent);
|
||||||
|
background-image: -ms-linear-gradient($angle, rgba(255,255,255,.15) 25%, transparent 25%, transparent 50%, rgba(255,255,255,.15) 50%, rgba(255,255,255,.15) 75%, transparent 75%, transparent);
|
||||||
|
background-image: -o-linear-gradient($angle, rgba(255,255,255,.15) 25%, transparent 25%, transparent 50%, rgba(255,255,255,.15) 50%, rgba(255,255,255,.15) 75%, transparent 75%, transparent);
|
||||||
|
background-image: linear-gradient($angle, rgba(255,255,255,.15) 25%, rgba(255,255,255,0) 25%, rgba(255,255,255,0) 50%, rgba(255,255,255,.15) 50%, rgba(255,255,255,.15) 75%, rgba(255,255,255,0) 75%, rgba(255,255,255,0));
|
||||||
|
}
|
||||||
|
// Reset filters for IE
|
||||||
|
@mixin reset-filter() {
|
||||||
|
filter: progid:DXImageTransform.Microsoft.gradient(enabled = false);
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
// Mixin for generating button backgrounds
|
||||||
|
// ---------------------------------------
|
||||||
|
@mixin buttonBackground($startColor, $endColor) {
|
||||||
|
// gradientBar will set the background to a pleasing blend of these, to support IE<=9
|
||||||
|
@include gradientBar($startColor, $endColor);
|
||||||
|
@include reset-filter();
|
||||||
|
|
||||||
|
// in these cases the gradient won't cover the background, so we override
|
||||||
|
&:hover, &:active, &.active, &.disabled, &[disabled] {
|
||||||
|
background-color: $endColor;
|
||||||
|
}
|
||||||
|
|
||||||
|
// IE 7 + 8 can't handle box-shadow to show active, so we darken a bit ourselves
|
||||||
|
&:active, &.active {
|
||||||
|
background-color: darken($endColor, 10%) \9;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
// COMPONENT MIXINS
|
||||||
|
// --------------------------------------------------
|
||||||
|
|
||||||
|
// POPOVER ARROWS
|
||||||
|
// -------------------------
|
||||||
|
// For tipsies and popovers
|
||||||
|
@mixin popoverArrowTop($arrowWidth: 5px) {
|
||||||
|
bottom: 0;
|
||||||
|
left: 50%;
|
||||||
|
margin-left: -$arrowWidth;
|
||||||
|
border-left: $arrowWidth solid transparent;
|
||||||
|
border-right: $arrowWidth solid transparent;
|
||||||
|
border-top: $arrowWidth solid $black;
|
||||||
|
}
|
||||||
|
@mixin popoverArrowLeft($arrowWidth: 5px) {
|
||||||
|
top: 50%;
|
||||||
|
right: 0;
|
||||||
|
margin-top: -$arrowWidth;
|
||||||
|
border-top: $arrowWidth solid transparent;
|
||||||
|
border-bottom: $arrowWidth solid transparent;
|
||||||
|
border-left: $arrowWidth solid $black;
|
||||||
|
}
|
||||||
|
@mixin popoverArrowBottom($arrowWidth: 5px) {
|
||||||
|
top: 0;
|
||||||
|
left: 50%;
|
||||||
|
margin-left: -$arrowWidth;
|
||||||
|
border-left: $arrowWidth solid transparent;
|
||||||
|
border-right: $arrowWidth solid transparent;
|
||||||
|
border-bottom: $arrowWidth solid $black;
|
||||||
|
}
|
||||||
|
@mixin popoverArrowRight($arrowWidth: 5px) {
|
||||||
|
top: 50%;
|
||||||
|
left: 0;
|
||||||
|
margin-top: -$arrowWidth;
|
||||||
|
border-top: $arrowWidth solid transparent;
|
||||||
|
border-bottom: $arrowWidth solid transparent;
|
||||||
|
border-right: $arrowWidth solid $black;
|
||||||
|
}
|
83
xstatic/pkg/bootstrap_scss/data/scss/bootstrap/_modals.scss
Normal file
83
xstatic/pkg/bootstrap_scss/data/scss/bootstrap/_modals.scss
Normal file
@ -0,0 +1,83 @@
|
|||||||
|
// MODALS
|
||||||
|
// ------
|
||||||
|
|
||||||
|
// Recalculate z-index where appropriate
|
||||||
|
.modal-open {
|
||||||
|
.dropdown-menu { z-index: $zindexDropdown + $zindexModal; }
|
||||||
|
.dropdown.open { *z-index: $zindexDropdown + $zindexModal; }
|
||||||
|
.popover { z-index: $zindexPopover + $zindexModal; }
|
||||||
|
.tooltip { z-index: $zindexTooltip + $zindexModal; }
|
||||||
|
}
|
||||||
|
|
||||||
|
// Background
|
||||||
|
.modal-backdrop {
|
||||||
|
position: fixed;
|
||||||
|
top: 0;
|
||||||
|
right: 0;
|
||||||
|
bottom: 0;
|
||||||
|
left: 0;
|
||||||
|
z-index: $zindexModalBackdrop;
|
||||||
|
background-color: $black;
|
||||||
|
// Fade for backdrop
|
||||||
|
&.fade { opacity: 0; }
|
||||||
|
}
|
||||||
|
|
||||||
|
.modal-backdrop, .modal-backdrop.fade.in {
|
||||||
|
@include opacity(0.8);
|
||||||
|
}
|
||||||
|
|
||||||
|
// Base modal
|
||||||
|
.modal {
|
||||||
|
position: fixed;
|
||||||
|
top: 50%;
|
||||||
|
left: 50%;
|
||||||
|
z-index: $zindexModal;
|
||||||
|
max-height: 500px;
|
||||||
|
overflow: auto;
|
||||||
|
width: 560px;
|
||||||
|
margin: -250px 0 0 -280px;
|
||||||
|
background-color: $white;
|
||||||
|
border: 1px solid #999;
|
||||||
|
border: 1px solid rgba(0,0,0,.3);
|
||||||
|
*border: 1px solid #999; /* IE6-7 */
|
||||||
|
@include border-radius(6px);
|
||||||
|
@include box-shadow(0 3px 7px rgba(0,0,0,0.3));
|
||||||
|
@include background-clip(padding-box);
|
||||||
|
&.fade {
|
||||||
|
$transition: opacity .3s linear, top .3s ease-out;
|
||||||
|
@include transition($transition);
|
||||||
|
top: -25%;
|
||||||
|
}
|
||||||
|
&.fade.in { top: 50%; }
|
||||||
|
}
|
||||||
|
.modal-header {
|
||||||
|
padding: 9px 15px;
|
||||||
|
border-bottom: 1px solid #eee;
|
||||||
|
// Close icon
|
||||||
|
.close { margin-top: 2px; }
|
||||||
|
}
|
||||||
|
|
||||||
|
// Body (where all modal content resides)
|
||||||
|
.modal-body {
|
||||||
|
padding: 15px;
|
||||||
|
}
|
||||||
|
// Remove bottom margin if need be
|
||||||
|
.modal-body .modal-form {
|
||||||
|
margin-bottom: 0;
|
||||||
|
}
|
||||||
|
|
||||||
|
// Footer (for actions)
|
||||||
|
.modal-footer {
|
||||||
|
padding: 14px 15px 15px;
|
||||||
|
margin-bottom: 0;
|
||||||
|
background-color: #f5f5f5;
|
||||||
|
border-top: 1px solid #ddd;
|
||||||
|
@include border-radius(0 0 6px 6px);
|
||||||
|
@include box-shadow(inset 0 1px 0 $white);
|
||||||
|
@include clearfix();
|
||||||
|
.btn {
|
||||||
|
float: right;
|
||||||
|
margin-left: 5px;
|
||||||
|
margin-bottom: 0; // account for input[type="submit"] which gets the bottom margin like all other inputs
|
||||||
|
}
|
||||||
|
}
|
288
xstatic/pkg/bootstrap_scss/data/scss/bootstrap/_navbar.scss
Normal file
288
xstatic/pkg/bootstrap_scss/data/scss/bootstrap/_navbar.scss
Normal file
@ -0,0 +1,288 @@
|
|||||||
|
// NAVBAR (FIXED AND STATIC)
|
||||||
|
// -------------------------
|
||||||
|
|
||||||
|
|
||||||
|
// COMMON STYLES
|
||||||
|
// -------------
|
||||||
|
|
||||||
|
.navbar {
|
||||||
|
overflow: visible;
|
||||||
|
margin-bottom: $baseLineHeight;
|
||||||
|
}
|
||||||
|
|
||||||
|
// Gradient is applied to it's own element because overflow visible is not honored by IE when filter is present
|
||||||
|
.navbar-inner {
|
||||||
|
padding-left: 20px;
|
||||||
|
padding-right: 20px;
|
||||||
|
@include gradient-vertical($navbarBackgroundHighlight, $navbarBackground);
|
||||||
|
@include border-radius(4px);
|
||||||
|
$shadow: 0 1px 3px rgba(0,0,0,.25), inset 0 -1px 0 rgba(0,0,0,.1);
|
||||||
|
@include box-shadow($shadow);
|
||||||
|
}
|
||||||
|
|
||||||
|
// Navbar button for toggling navbar items in responsive layouts
|
||||||
|
.btn-navbar {
|
||||||
|
display: none;
|
||||||
|
float: right;
|
||||||
|
padding: 7px 10px;
|
||||||
|
margin-left: 5px;
|
||||||
|
margin-right: 5px;
|
||||||
|
@include buttonBackground($navbarBackgroundHighlight, $navbarBackground);
|
||||||
|
$shadow: inset 0 1px 0 rgba(255,255,255,.1), 0 1px 0 rgba(255,255,255,.075);
|
||||||
|
@include box-shadow($shadow);
|
||||||
|
}
|
||||||
|
.btn-navbar .icon-bar {
|
||||||
|
display: block;
|
||||||
|
width: 18px;
|
||||||
|
height: 2px;
|
||||||
|
background-color: #f5f5f5;
|
||||||
|
@include border-radius(1px);
|
||||||
|
@include box-shadow(0 1px 0 rgba(0,0,0,.25));
|
||||||
|
}
|
||||||
|
.btn-navbar .icon-bar + .icon-bar {
|
||||||
|
margin-top: 3px;
|
||||||
|
}
|
||||||
|
// Override the default collapsed state
|
||||||
|
.nav-collapse.collapse {
|
||||||
|
height: auto;
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
// Brand, links, text, and buttons
|
||||||
|
.navbar {
|
||||||
|
// Hover and active states
|
||||||
|
.brand:hover {
|
||||||
|
text-decoration: none;
|
||||||
|
}
|
||||||
|
// Website or project name
|
||||||
|
.brand {
|
||||||
|
float: left;
|
||||||
|
display: block;
|
||||||
|
padding: 8px 20px 12px;
|
||||||
|
margin-left: -20px; // negative indent to left-align the text down the page
|
||||||
|
font-size: 20px;
|
||||||
|
font-weight: 200;
|
||||||
|
line-height: 1;
|
||||||
|
color: $white;
|
||||||
|
}
|
||||||
|
// Plain text in topbar
|
||||||
|
.navbar-text {
|
||||||
|
margin-bottom: 0;
|
||||||
|
line-height: 40px;
|
||||||
|
color: $navbarText;
|
||||||
|
a:hover {
|
||||||
|
color: $white;
|
||||||
|
background-color: transparent;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
// Buttons in navbar
|
||||||
|
.btn, .btn-group {
|
||||||
|
margin-top: 5px; // make buttons vertically centered in navbar
|
||||||
|
}
|
||||||
|
.btn-group .btn {
|
||||||
|
margin-top: 0; // then undo the margin here so we don't accidentally double it
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
// Navbar forms
|
||||||
|
.navbar-form {
|
||||||
|
margin-bottom: 0; // remove default bottom margin
|
||||||
|
@include clearfix();
|
||||||
|
input, select {
|
||||||
|
display: inline-block;
|
||||||
|
margin-top: 5px;
|
||||||
|
margin-bottom: 0;
|
||||||
|
}
|
||||||
|
.radio, .checkbox {
|
||||||
|
margin-top: 5px;
|
||||||
|
}
|
||||||
|
input[type="image"], input[type="checkbox"], input[type="radio"] {
|
||||||
|
margin-top: 3px;
|
||||||
|
}
|
||||||
|
.input-append, .input-prepend {
|
||||||
|
margin-top: 6px;
|
||||||
|
white-space: nowrap; // prevents two items from separating within a .navbar-form that has .pull-left
|
||||||
|
input {
|
||||||
|
margin-top: 0; //remove the margin on top since it's on parent
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
// Navbar search
|
||||||
|
.navbar-search {
|
||||||
|
position: relative;
|
||||||
|
float: left;
|
||||||
|
margin-top: 6px;
|
||||||
|
margin-bottom: 0;
|
||||||
|
.search-query {
|
||||||
|
padding: 4px 9px;
|
||||||
|
@include font-sans-serif(13px, normal, 1);
|
||||||
|
color: $white;
|
||||||
|
color: rgba(255,255,255,.75);
|
||||||
|
background: #666;
|
||||||
|
background: rgba(255,255,255,.3);
|
||||||
|
border: 1px solid #111;
|
||||||
|
$shadow: inset 0 1px 2px rgba(0,0,0,.1), 0 1px 0px rgba(255,255,255,.15);
|
||||||
|
@include box-shadow($shadow);
|
||||||
|
@include transition(none);
|
||||||
|
|
||||||
|
// Placeholder text gets special styles; can't be bundled together though for some reason
|
||||||
|
@include placeholder($grayLighter);
|
||||||
|
|
||||||
|
// Hover states
|
||||||
|
&:hover {
|
||||||
|
color: $white;
|
||||||
|
background-color: $grayLight;
|
||||||
|
background-color: rgba(255,255,255,.5);
|
||||||
|
}
|
||||||
|
// Focus states (we use .focused since IE7-8 and down doesn't support :focus)
|
||||||
|
&:focus, &.focused {
|
||||||
|
padding: 5px 10px;
|
||||||
|
color: $grayDark;
|
||||||
|
text-shadow: 0 1px 0 $white;
|
||||||
|
background-color: $white;
|
||||||
|
border: 0;
|
||||||
|
@include box-shadow(0 0 3px rgba(0,0,0,.15));
|
||||||
|
outline: 0;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
// FIXED NAVBAR
|
||||||
|
// ------------
|
||||||
|
|
||||||
|
.navbar-fixed-top {
|
||||||
|
position: fixed;
|
||||||
|
top: 0;
|
||||||
|
right: 0;
|
||||||
|
left: 0;
|
||||||
|
z-index: $zindexFixedNavbar;
|
||||||
|
}
|
||||||
|
.navbar-fixed-top .navbar-inner {
|
||||||
|
padding-left: 0;
|
||||||
|
padding-right: 0;
|
||||||
|
@include border-radius(0);
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
// NAVIGATION
|
||||||
|
// ----------
|
||||||
|
|
||||||
|
.navbar .nav {
|
||||||
|
position: relative;
|
||||||
|
left: 0;
|
||||||
|
display: block;
|
||||||
|
float: left;
|
||||||
|
margin: 0 10px 0 0;
|
||||||
|
}
|
||||||
|
.navbar .nav.pull-right {
|
||||||
|
float: right; // redeclare due to specificity
|
||||||
|
}
|
||||||
|
.navbar .nav > li {
|
||||||
|
display: block;
|
||||||
|
float: left;
|
||||||
|
}
|
||||||
|
|
||||||
|
// Links
|
||||||
|
.navbar .nav > li > a {
|
||||||
|
float: none;
|
||||||
|
padding: 10px 10px 11px;
|
||||||
|
line-height: 19px;
|
||||||
|
color: $navbarLinkColor;
|
||||||
|
text-decoration: none;
|
||||||
|
text-shadow: 0 -1px 0 rgba(0,0,0,.25);
|
||||||
|
}
|
||||||
|
// Hover
|
||||||
|
.navbar .nav > li > a:hover {
|
||||||
|
background-color: $navbarLinkBackgroundHover; // "transparent" is default to differentiate :hover from :active
|
||||||
|
color: $navbarLinkColorHover;
|
||||||
|
text-decoration: none;
|
||||||
|
}
|
||||||
|
|
||||||
|
// Active nav items
|
||||||
|
.navbar .nav .active > a, .navbar .nav .active > a:hover {
|
||||||
|
color: $navbarLinkColorHover;
|
||||||
|
text-decoration: none;
|
||||||
|
background-color: $navbarBackground;
|
||||||
|
}
|
||||||
|
|
||||||
|
// Dividers (basically a vertical hr)
|
||||||
|
.navbar .divider-vertical {
|
||||||
|
height: $navbarHeight;
|
||||||
|
width: 1px;
|
||||||
|
margin: 0 9px;
|
||||||
|
overflow: hidden;
|
||||||
|
background-color: $navbarBackground;
|
||||||
|
border-right: 1px solid $navbarBackgroundHighlight;
|
||||||
|
}
|
||||||
|
|
||||||
|
// Secondary (floated right) nav in topbar
|
||||||
|
.navbar .nav.pull-right {
|
||||||
|
margin-left: 10px;
|
||||||
|
margin-right: 0;
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
// Dropdown menus
|
||||||
|
// --------------
|
||||||
|
|
||||||
|
// Menu position and menu carets
|
||||||
|
.navbar .dropdown-menu {
|
||||||
|
margin-top: 1px;
|
||||||
|
@include border-radius(4px);
|
||||||
|
&:before {
|
||||||
|
content: '';
|
||||||
|
display: inline-block;
|
||||||
|
border-left: 7px solid transparent;
|
||||||
|
border-right: 7px solid transparent;
|
||||||
|
border-bottom: 7px solid #ccc;
|
||||||
|
border-bottom-color: rgba(0,0,0,.2);
|
||||||
|
position: absolute;
|
||||||
|
top: -7px;
|
||||||
|
left: 9px;
|
||||||
|
}
|
||||||
|
&:after {
|
||||||
|
content: '';
|
||||||
|
display: inline-block;
|
||||||
|
border-left: 6px solid transparent;
|
||||||
|
border-right: 6px solid transparent;
|
||||||
|
border-bottom: 6px solid $white;
|
||||||
|
position: absolute;
|
||||||
|
top: -6px;
|
||||||
|
left: 10px;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
// Dropdown toggle caret
|
||||||
|
.navbar .nav .dropdown-toggle .caret, .navbar .nav .open.dropdown .caret {
|
||||||
|
border-top-color: $white;
|
||||||
|
}
|
||||||
|
.navbar .nav .active .caret {
|
||||||
|
@include opacity(1);
|
||||||
|
}
|
||||||
|
|
||||||
|
// Remove background color from open dropdown
|
||||||
|
.navbar .nav .open > .dropdown-toggle, .navbar .nav .active > .dropdown-toggle, .navbar .nav .open.active > .dropdown-toggle {
|
||||||
|
background-color: transparent;
|
||||||
|
}
|
||||||
|
|
||||||
|
// Dropdown link on hover
|
||||||
|
.navbar .nav .active > .dropdown-toggle:hover {
|
||||||
|
color: $white;
|
||||||
|
}
|
||||||
|
|
||||||
|
// Right aligned menus need alt position
|
||||||
|
.navbar .nav.pull-right .dropdown-menu {
|
||||||
|
left: auto;
|
||||||
|
right: 0;
|
||||||
|
&:before {
|
||||||
|
left: auto;
|
||||||
|
right: 12px;
|
||||||
|
}
|
||||||
|
&:after {
|
||||||
|
left: auto;
|
||||||
|
right: 13px;
|
||||||
|
}
|
||||||
|
}
|
329
xstatic/pkg/bootstrap_scss/data/scss/bootstrap/_navs.scss
Normal file
329
xstatic/pkg/bootstrap_scss/data/scss/bootstrap/_navs.scss
Normal file
@ -0,0 +1,329 @@
|
|||||||
|
// NAVIGATIONS
|
||||||
|
// -----------
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
// BASE CLASS
|
||||||
|
// ----------
|
||||||
|
|
||||||
|
.nav {
|
||||||
|
margin-left: 0;
|
||||||
|
margin-bottom: $baseLineHeight;
|
||||||
|
list-style: none;
|
||||||
|
}
|
||||||
|
|
||||||
|
// Make links block level
|
||||||
|
.nav > li > a {
|
||||||
|
display: block;
|
||||||
|
}
|
||||||
|
.nav > li > a:hover {
|
||||||
|
text-decoration: none;
|
||||||
|
background-color: $grayLighter;
|
||||||
|
}
|
||||||
|
|
||||||
|
// Nav headers (for dropdowns and lists)
|
||||||
|
.nav .nav-header {
|
||||||
|
display: block;
|
||||||
|
padding: 3px 15px;
|
||||||
|
font-size: 11px;
|
||||||
|
font-weight: bold;
|
||||||
|
line-height: $baseLineHeight;
|
||||||
|
color: $grayLight;
|
||||||
|
text-shadow: 0 1px 0 rgba(255,255,255,.5);
|
||||||
|
text-transform: uppercase;
|
||||||
|
}
|
||||||
|
// Space them out when they follow another list item (link)
|
||||||
|
.nav li + .nav-header {
|
||||||
|
margin-top: 9px;
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
// NAV LIST
|
||||||
|
// --------
|
||||||
|
|
||||||
|
.nav-list {
|
||||||
|
padding-left: 14px;
|
||||||
|
padding-right: 14px;
|
||||||
|
margin-bottom: 0;
|
||||||
|
}
|
||||||
|
.nav-list > li > a, .nav-list .nav-header {
|
||||||
|
margin-left: -15px;
|
||||||
|
margin-right: -15px;
|
||||||
|
text-shadow: 0 1px 0 rgba(255,255,255,.5);
|
||||||
|
}
|
||||||
|
.nav-list > li > a {
|
||||||
|
padding: 3px 15px;
|
||||||
|
}
|
||||||
|
.nav-list .active > a, .nav-list .active > a:hover {
|
||||||
|
color: $white;
|
||||||
|
text-shadow: 0 -1px 0 rgba(0,0,0,.2);
|
||||||
|
background-color: $linkColor;
|
||||||
|
}
|
||||||
|
.nav-list [class^="icon-"] {
|
||||||
|
margin-right: 2px;
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
// TABS AND PILLS
|
||||||
|
// -------------
|
||||||
|
|
||||||
|
// Common styles
|
||||||
|
.nav-tabs, .nav-pills {
|
||||||
|
@include clearfix();
|
||||||
|
}
|
||||||
|
.nav-tabs > li, .nav-pills > li {
|
||||||
|
float: left;
|
||||||
|
}
|
||||||
|
.nav-tabs > li > a, .nav-pills > li > a {
|
||||||
|
padding-right: 12px;
|
||||||
|
padding-left: 12px;
|
||||||
|
margin-right: 2px;
|
||||||
|
line-height: 14px; // keeps the overall height an even number
|
||||||
|
}
|
||||||
|
|
||||||
|
// TABS
|
||||||
|
// ----
|
||||||
|
|
||||||
|
// Give the tabs something to sit on
|
||||||
|
.nav-tabs {
|
||||||
|
border-bottom: 1px solid #ddd;
|
||||||
|
}
|
||||||
|
|
||||||
|
// Make the list-items overlay the bottom border
|
||||||
|
.nav-tabs > li {
|
||||||
|
margin-bottom: -1px;
|
||||||
|
}
|
||||||
|
|
||||||
|
// Actual tabs (as links)
|
||||||
|
.nav-tabs > li > a {
|
||||||
|
padding-top: 9px;
|
||||||
|
padding-bottom: 9px;
|
||||||
|
border: 1px solid transparent;
|
||||||
|
@include border-radius(4px 4px 0 0);
|
||||||
|
&:hover {
|
||||||
|
border-color: $grayLighter $grayLighter #ddd;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
// Active state, and it's :hover to override normal :hover
|
||||||
|
.nav-tabs > .active > a, .nav-tabs > .active > a:hover {
|
||||||
|
color: $gray;
|
||||||
|
background-color: $white;
|
||||||
|
border: 1px solid #ddd;
|
||||||
|
border-bottom-color: transparent;
|
||||||
|
cursor: default;
|
||||||
|
}
|
||||||
|
|
||||||
|
// PILLS
|
||||||
|
// -----
|
||||||
|
|
||||||
|
// Links rendered as pills
|
||||||
|
.nav-pills > li > a {
|
||||||
|
padding-top: 8px;
|
||||||
|
padding-bottom: 8px;
|
||||||
|
margin-top: 2px;
|
||||||
|
margin-bottom: 2px;
|
||||||
|
@include border-radius(5px);
|
||||||
|
}
|
||||||
|
|
||||||
|
// Active state
|
||||||
|
.nav-pills .active > a, .nav-pills .active > a:hover {
|
||||||
|
color: $white;
|
||||||
|
background-color: $linkColor;
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
// STACKED NAV
|
||||||
|
// -----------
|
||||||
|
|
||||||
|
// Stacked tabs and pills
|
||||||
|
.nav-stacked > li {
|
||||||
|
float: none;
|
||||||
|
}
|
||||||
|
.nav-stacked > li > a {
|
||||||
|
margin-right: 0; // no need for the gap between nav items
|
||||||
|
}
|
||||||
|
|
||||||
|
// Tabs
|
||||||
|
.nav-tabs.nav-stacked {
|
||||||
|
border-bottom: 0;
|
||||||
|
}
|
||||||
|
.nav-tabs.nav-stacked > li > a {
|
||||||
|
border: 1px solid #ddd;
|
||||||
|
@include border-radius(0);
|
||||||
|
}
|
||||||
|
.nav-tabs.nav-stacked > li:first-child > a {
|
||||||
|
@include border-radius(4px 4px 0 0);
|
||||||
|
}
|
||||||
|
.nav-tabs.nav-stacked > li:last-child > a {
|
||||||
|
@include border-radius(0 0 4px 4px);
|
||||||
|
}
|
||||||
|
.nav-tabs.nav-stacked > li > a:hover {
|
||||||
|
border-color: #ddd;
|
||||||
|
z-index: 2;
|
||||||
|
}
|
||||||
|
|
||||||
|
// Pills
|
||||||
|
.nav-pills.nav-stacked > li > a {
|
||||||
|
margin-bottom: 3px;
|
||||||
|
}
|
||||||
|
.nav-pills.nav-stacked > li:last-child > a {
|
||||||
|
margin-bottom: 1px; // decrease margin to match sizing of stacked tabs
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
// DROPDOWNS
|
||||||
|
// ---------
|
||||||
|
|
||||||
|
// Position the menu
|
||||||
|
.nav-tabs .dropdown-menu, .nav-pills .dropdown-menu {
|
||||||
|
margin-top: 1px;
|
||||||
|
border-width: 1px;
|
||||||
|
}
|
||||||
|
.nav-pills .dropdown-menu {
|
||||||
|
@include border-radius(4px);
|
||||||
|
}
|
||||||
|
|
||||||
|
// Default dropdown links
|
||||||
|
// -------------------------
|
||||||
|
// Make carets use linkColor to start
|
||||||
|
.nav-tabs .dropdown-toggle .caret, .nav-pills .dropdown-toggle .caret {
|
||||||
|
border-top-color: $linkColor;
|
||||||
|
margin-top: 6px;
|
||||||
|
}
|
||||||
|
.nav-tabs .dropdown-toggle:hover .caret, .nav-pills .dropdown-toggle:hover .caret {
|
||||||
|
border-top-color: $linkColorHover;
|
||||||
|
}
|
||||||
|
|
||||||
|
// Active dropdown links
|
||||||
|
// -------------------------
|
||||||
|
.nav-tabs .active .dropdown-toggle .caret, .nav-pills .active .dropdown-toggle .caret {
|
||||||
|
border-top-color: $grayDark;
|
||||||
|
}
|
||||||
|
|
||||||
|
// Active:hover dropdown links
|
||||||
|
// -------------------------
|
||||||
|
.nav > .dropdown.active > a:hover {
|
||||||
|
color: $black;
|
||||||
|
cursor: pointer;
|
||||||
|
}
|
||||||
|
|
||||||
|
// Open dropdowns
|
||||||
|
// -------------------------
|
||||||
|
.nav-tabs .open .dropdown-toggle, .nav-pills .open .dropdown-toggle, .nav > .open.active > a:hover {
|
||||||
|
color: $white;
|
||||||
|
background-color: $grayLight;
|
||||||
|
border-color: $grayLight;
|
||||||
|
}
|
||||||
|
.nav .open .caret, .nav .open.active .caret, .nav .open a:hover .caret {
|
||||||
|
border-top-color: $white;
|
||||||
|
@include opacity(1);
|
||||||
|
}
|
||||||
|
|
||||||
|
// Dropdowns in stacked tabs
|
||||||
|
.tabs-stacked .open > a:hover {
|
||||||
|
border-color: $grayLight;
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
// TABBABLE
|
||||||
|
// --------
|
||||||
|
|
||||||
|
|
||||||
|
// COMMON STYLES
|
||||||
|
// -------------
|
||||||
|
|
||||||
|
// Clear any floats
|
||||||
|
.tabbable {
|
||||||
|
@include clearfix();
|
||||||
|
}
|
||||||
|
.tab-content {
|
||||||
|
overflow: hidden; // prevent content from running below tabs
|
||||||
|
}
|
||||||
|
|
||||||
|
// Remove border on bottom, left, right
|
||||||
|
.tabs-below .nav-tabs, .tabs-right .nav-tabs, .tabs-left .nav-tabs {
|
||||||
|
border-bottom: 0;
|
||||||
|
}
|
||||||
|
|
||||||
|
// Show/hide tabbable areas
|
||||||
|
.tab-content > .tab-pane, .pill-content > .pill-pane {
|
||||||
|
display: none;
|
||||||
|
}
|
||||||
|
.tab-content > .active, .pill-content > .active {
|
||||||
|
display: block;
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
// BOTTOM
|
||||||
|
// ------
|
||||||
|
|
||||||
|
.tabs-below .nav-tabs {
|
||||||
|
border-top: 1px solid #ddd;
|
||||||
|
}
|
||||||
|
.tabs-below .nav-tabs > li {
|
||||||
|
margin-top: -1px;
|
||||||
|
margin-bottom: 0;
|
||||||
|
}
|
||||||
|
.tabs-below .nav-tabs > li > a {
|
||||||
|
@include border-radius(0 0 4px 4px);
|
||||||
|
&:hover {
|
||||||
|
border-bottom-color: transparent;
|
||||||
|
border-top-color: #ddd;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
.tabs-below .nav-tabs .active > a, .tabs-below .nav-tabs .active > a:hover {
|
||||||
|
border-color: transparent #ddd #ddd #ddd;
|
||||||
|
}
|
||||||
|
|
||||||
|
// LEFT & RIGHT
|
||||||
|
// ------------
|
||||||
|
|
||||||
|
// Common styles
|
||||||
|
.tabs-left .nav-tabs > li, .tabs-right .nav-tabs > li {
|
||||||
|
float: none;
|
||||||
|
}
|
||||||
|
.tabs-left .nav-tabs > li > a, .tabs-right .nav-tabs > li > a {
|
||||||
|
min-width: 74px;
|
||||||
|
margin-right: 0;
|
||||||
|
margin-bottom: 3px;
|
||||||
|
}
|
||||||
|
|
||||||
|
// Tabs on the left
|
||||||
|
.tabs-left .nav-tabs {
|
||||||
|
float: left;
|
||||||
|
margin-right: 19px;
|
||||||
|
border-right: 1px solid #ddd;
|
||||||
|
}
|
||||||
|
.tabs-left .nav-tabs > li > a {
|
||||||
|
margin-right: -1px;
|
||||||
|
@include border-radius(4px 0 0 4px);
|
||||||
|
}
|
||||||
|
.tabs-left .nav-tabs > li > a:hover {
|
||||||
|
border-color: $grayLighter #ddd $grayLighter $grayLighter;
|
||||||
|
}
|
||||||
|
.tabs-left .nav-tabs .active > a, .tabs-left .nav-tabs .active > a:hover {
|
||||||
|
border-color: #ddd transparent #ddd #ddd;
|
||||||
|
*border-right-color: $white;
|
||||||
|
}
|
||||||
|
|
||||||
|
// Tabs on the right
|
||||||
|
.tabs-right .nav-tabs {
|
||||||
|
float: right;
|
||||||
|
margin-left: 19px;
|
||||||
|
border-left: 1px solid #ddd;
|
||||||
|
}
|
||||||
|
.tabs-right .nav-tabs > li > a {
|
||||||
|
margin-left: -1px;
|
||||||
|
@include border-radius(0 4px 4px 0);
|
||||||
|
}
|
||||||
|
.tabs-right .nav-tabs > li > a:hover {
|
||||||
|
border-color: $grayLighter $grayLighter $grayLighter #ddd;
|
||||||
|
}
|
||||||
|
.tabs-right .nav-tabs .active > a, .tabs-right .nav-tabs .active > a:hover {
|
||||||
|
border-color: #ddd #ddd #ddd transparent;
|
||||||
|
*border-left-color: $white;
|
||||||
|
}
|
30
xstatic/pkg/bootstrap_scss/data/scss/bootstrap/_pager.scss
Normal file
30
xstatic/pkg/bootstrap_scss/data/scss/bootstrap/_pager.scss
Normal file
@ -0,0 +1,30 @@
|
|||||||
|
// PAGER
|
||||||
|
// -----
|
||||||
|
|
||||||
|
.pager {
|
||||||
|
margin-left: 0;
|
||||||
|
margin-bottom: $baseLineHeight;
|
||||||
|
list-style: none;
|
||||||
|
text-align: center;
|
||||||
|
@include clearfix();
|
||||||
|
}
|
||||||
|
.pager li {
|
||||||
|
display: inline;
|
||||||
|
}
|
||||||
|
.pager a {
|
||||||
|
display: inline-block;
|
||||||
|
padding: 5px 14px;
|
||||||
|
background-color: #fff;
|
||||||
|
border: 1px solid #ddd;
|
||||||
|
@include border-radius(15px);
|
||||||
|
}
|
||||||
|
.pager a:hover {
|
||||||
|
text-decoration: none;
|
||||||
|
background-color: #f5f5f5;
|
||||||
|
}
|
||||||
|
.pager .next a {
|
||||||
|
float: right;
|
||||||
|
}
|
||||||
|
.pager .previous a {
|
||||||
|
float: left;
|
||||||
|
}
|
@ -0,0 +1,53 @@
|
|||||||
|
// PAGINATION
|
||||||
|
// ----------
|
||||||
|
|
||||||
|
.pagination {
|
||||||
|
height: $baseLineHeight * 2;
|
||||||
|
margin: $baseLineHeight 0;
|
||||||
|
}
|
||||||
|
.pagination ul {
|
||||||
|
display: inline-block;
|
||||||
|
@include ie7-inline-block();
|
||||||
|
margin-left: 0;
|
||||||
|
margin-bottom: 0;
|
||||||
|
@include border-radius(3px);
|
||||||
|
@include box-shadow(0 1px 2px rgba(0,0,0,.05));
|
||||||
|
}
|
||||||
|
.pagination li {
|
||||||
|
display: inline;
|
||||||
|
}
|
||||||
|
.pagination a {
|
||||||
|
float: left;
|
||||||
|
padding: 0 14px;
|
||||||
|
line-height: ($baseLineHeight * 2) - 2;
|
||||||
|
text-decoration: none;
|
||||||
|
border: 1px solid #ddd;
|
||||||
|
border-left-width: 0;
|
||||||
|
}
|
||||||
|
.pagination a:hover, .pagination .active a {
|
||||||
|
background-color: #f5f5f5;
|
||||||
|
}
|
||||||
|
.pagination .active a {
|
||||||
|
color: $grayLight;
|
||||||
|
cursor: default;
|
||||||
|
}
|
||||||
|
.pagination .disabled a, .pagination .disabled a:hover {
|
||||||
|
color: $grayLight;
|
||||||
|
background-color: transparent;
|
||||||
|
cursor: default;
|
||||||
|
}
|
||||||
|
.pagination li:first-child a {
|
||||||
|
border-left-width: 1px;
|
||||||
|
@include border-radius(3px 0 0 3px);
|
||||||
|
}
|
||||||
|
.pagination li:last-child a {
|
||||||
|
@include border-radius(0 3px 3px 0);
|
||||||
|
}
|
||||||
|
|
||||||
|
// Centered
|
||||||
|
.pagination-centered {
|
||||||
|
text-align: center;
|
||||||
|
}
|
||||||
|
.pagination-right {
|
||||||
|
text-align: right;
|
||||||
|
}
|
@ -0,0 +1,49 @@
|
|||||||
|
// POPOVERS
|
||||||
|
// --------
|
||||||
|
|
||||||
|
.popover {
|
||||||
|
position: absolute;
|
||||||
|
top: 0;
|
||||||
|
left: 0;
|
||||||
|
z-index: $zindexPopover;
|
||||||
|
display: none;
|
||||||
|
padding: 5px;
|
||||||
|
&.top { margin-top: -5px; }
|
||||||
|
&.right { margin-left: 5px; }
|
||||||
|
&.bottom { margin-top: 5px; }
|
||||||
|
&.left { margin-left: -5px; }
|
||||||
|
&.top .arrow { @include popoverArrowTop(); }
|
||||||
|
&.right .arrow { @include popoverArrowRight(); }
|
||||||
|
&.bottom .arrow { @include popoverArrowBottom(); }
|
||||||
|
&.left .arrow { @include popoverArrowLeft(); }
|
||||||
|
.arrow {
|
||||||
|
position: absolute;
|
||||||
|
width: 0;
|
||||||
|
height: 0;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
.popover-inner {
|
||||||
|
padding: 3px;
|
||||||
|
width: 280px;
|
||||||
|
overflow: hidden;
|
||||||
|
background: $black; // has to be full background declaration for IE fallback
|
||||||
|
background: rgba(0,0,0,.8);
|
||||||
|
@include border-radius(6px);
|
||||||
|
@include box-shadow(0 3px 7px rgba(0,0,0,0.3));
|
||||||
|
}
|
||||||
|
.popover-title {
|
||||||
|
padding: 9px 15px;
|
||||||
|
line-height: 1;
|
||||||
|
background-color: #f5f5f5;
|
||||||
|
border-bottom:1px solid #eee;
|
||||||
|
@include border-radius(3px 3px 0 0);
|
||||||
|
}
|
||||||
|
.popover-content {
|
||||||
|
padding: 14px;
|
||||||
|
background-color: $white;
|
||||||
|
@include border-radius(0 0 3px 3px);
|
||||||
|
@include background-clip(padding-box);
|
||||||
|
p, ul, ol {
|
||||||
|
margin-bottom: 0;
|
||||||
|
}
|
||||||
|
}
|
@ -0,0 +1,95 @@
|
|||||||
|
// PROGRESS BARS
|
||||||
|
// -------------
|
||||||
|
|
||||||
|
|
||||||
|
// ANIMATIONS
|
||||||
|
// ----------
|
||||||
|
|
||||||
|
// Webkit
|
||||||
|
@-webkit-keyframes progress-bar-stripes {
|
||||||
|
from { background-position: 0 0; }
|
||||||
|
to { background-position: 40px 0; }
|
||||||
|
}
|
||||||
|
|
||||||
|
// Firefox
|
||||||
|
@-moz-keyframes progress-bar-stripes {
|
||||||
|
from { background-position: 0 0; }
|
||||||
|
to { background-position: 40px 0; }
|
||||||
|
}
|
||||||
|
|
||||||
|
// Spec
|
||||||
|
@keyframes progress-bar-stripes {
|
||||||
|
from { background-position: 0 0; }
|
||||||
|
to { background-position: 40px 0; }
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
// THE BARS
|
||||||
|
// --------
|
||||||
|
|
||||||
|
// Outer container
|
||||||
|
.progress {
|
||||||
|
overflow: hidden;
|
||||||
|
height: 18px;
|
||||||
|
margin-bottom: 18px;
|
||||||
|
@include gradient-vertical(#f5f5f5, #f9f9f9);
|
||||||
|
@include box-shadow(inset 0 1px 2px rgba(0,0,0,.1));
|
||||||
|
@include border-radius(4px);
|
||||||
|
}
|
||||||
|
|
||||||
|
// Bar of progress
|
||||||
|
.progress .bar {
|
||||||
|
width: 0%;
|
||||||
|
height: 18px;
|
||||||
|
color: $white;
|
||||||
|
font-size: 12px;
|
||||||
|
text-align: center;
|
||||||
|
text-shadow: 0 -1px 0 rgba(0,0,0,.25);
|
||||||
|
@include gradient-vertical(#149bdf, #0480be);
|
||||||
|
@include box-shadow(inset 0 -1px 0 rgba(0,0,0,.15));
|
||||||
|
@include box-sizing(border-box);
|
||||||
|
@include transition(width .6s ease);
|
||||||
|
}
|
||||||
|
|
||||||
|
// Striped bars
|
||||||
|
.progress-striped .bar {
|
||||||
|
@include gradient-striped(#62c462);
|
||||||
|
@include background-size(40px 40px);
|
||||||
|
}
|
||||||
|
|
||||||
|
// Call animation for the active one
|
||||||
|
.progress.active .bar {
|
||||||
|
-webkit-animation: progress-bar-stripes 2s linear infinite;
|
||||||
|
-moz-animation: progress-bar-stripes 2s linear infinite;
|
||||||
|
animation: progress-bar-stripes 2s linear infinite;
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
// COLORS
|
||||||
|
// ------
|
||||||
|
|
||||||
|
// Danger (red)
|
||||||
|
.progress-danger .bar {
|
||||||
|
@include gradient-vertical(#ee5f5b, #c43c35);
|
||||||
|
}
|
||||||
|
.progress-danger.progress-striped .bar {
|
||||||
|
@include gradient-striped(#ee5f5b);
|
||||||
|
}
|
||||||
|
|
||||||
|
// Success (green)
|
||||||
|
.progress-success .bar {
|
||||||
|
@include gradient-vertical(#62c462, #57a957);
|
||||||
|
}
|
||||||
|
.progress-success.progress-striped .bar {
|
||||||
|
@include gradient-striped(#62c462);
|
||||||
|
}
|
||||||
|
|
||||||
|
// Info (teal)
|
||||||
|
.progress-info .bar {
|
||||||
|
@include gradient-vertical(#5bc0de, #339bb9);
|
||||||
|
}
|
||||||
|
.progress-info.progress-striped .bar {
|
||||||
|
@include gradient-striped(#5bc0de);
|
||||||
|
}
|
105
xstatic/pkg/bootstrap_scss/data/scss/bootstrap/_reset.scss
Normal file
105
xstatic/pkg/bootstrap_scss/data/scss/bootstrap/_reset.scss
Normal file
@ -0,0 +1,105 @@
|
|||||||
|
// Reset.css.scss
|
||||||
|
// Adapted from Normalize.css http://github.com/necolas/normalize.css
|
||||||
|
// ------------------------------------------------------------------------
|
||||||
|
|
||||||
|
// Display in IE6-9 and FF3
|
||||||
|
// -------------------------
|
||||||
|
|
||||||
|
article, aside, details, figcaption, figure, footer, header, hgroup, nav, section {
|
||||||
|
display: block;
|
||||||
|
}
|
||||||
|
|
||||||
|
// Display block in IE6-9 and FF3
|
||||||
|
// -------------------------
|
||||||
|
|
||||||
|
audio, canvas, video {
|
||||||
|
display: inline-block;
|
||||||
|
*display: inline;
|
||||||
|
*zoom: 1;
|
||||||
|
}
|
||||||
|
|
||||||
|
// Prevents modern browsers from displaying 'audio' without controls
|
||||||
|
// -------------------------
|
||||||
|
|
||||||
|
audio:not([controls]) {
|
||||||
|
display: none;
|
||||||
|
}
|
||||||
|
|
||||||
|
// Base settings
|
||||||
|
// -------------------------
|
||||||
|
|
||||||
|
html {
|
||||||
|
font-size: 100%;
|
||||||
|
-webkit-text-size-adjust: 100%;
|
||||||
|
-ms-text-size-adjust: 100%;
|
||||||
|
}
|
||||||
|
// Focus states
|
||||||
|
a:focus {
|
||||||
|
@include tab-focus();
|
||||||
|
}
|
||||||
|
// Hover & Active
|
||||||
|
a:hover, a:active {
|
||||||
|
outline: 0;
|
||||||
|
}
|
||||||
|
|
||||||
|
// Prevents sub and sup affecting line-height in all browsers
|
||||||
|
// -------------------------
|
||||||
|
|
||||||
|
sub, sup {
|
||||||
|
position: relative;
|
||||||
|
font-size: 75%;
|
||||||
|
line-height: 0;
|
||||||
|
vertical-align: baseline;
|
||||||
|
}
|
||||||
|
sup {
|
||||||
|
top: -0.5em;
|
||||||
|
}
|
||||||
|
sub {
|
||||||
|
bottom: -0.25em;
|
||||||
|
}
|
||||||
|
|
||||||
|
// Img border in a's and image quality
|
||||||
|
// -------------------------
|
||||||
|
|
||||||
|
img {
|
||||||
|
max-width: 100%;
|
||||||
|
height: auto;
|
||||||
|
border: 0;
|
||||||
|
-ms-interpolation-mode: bicubic;
|
||||||
|
}
|
||||||
|
|
||||||
|
// Forms
|
||||||
|
// -------------------------
|
||||||
|
|
||||||
|
// Font size in all browsers, margin changes, misc consistency
|
||||||
|
button, input, select, textarea {
|
||||||
|
margin: 0;
|
||||||
|
font-size: 100%;
|
||||||
|
vertical-align: middle;
|
||||||
|
}
|
||||||
|
button, input {
|
||||||
|
*overflow: visible; // Inner spacing ie IE6/7
|
||||||
|
line-height: normal; // FF3/4 have !important on line-height in UA stylesheet
|
||||||
|
}
|
||||||
|
button::-moz-focus-inner, input::-moz-focus-inner { // Inner padding and border oddities in FF3/4
|
||||||
|
padding: 0;
|
||||||
|
border: 0;
|
||||||
|
}
|
||||||
|
button, input[type="button"], input[type="reset"], input[type="submit"] {
|
||||||
|
cursor: pointer; // Cursors on all buttons applied consistently
|
||||||
|
-webkit-appearance: button; // Style clickable inputs in iOS
|
||||||
|
}
|
||||||
|
input[type="search"] { // Appearance in Safari/Chrome
|
||||||
|
-webkit-appearance: textfield;
|
||||||
|
-webkit-box-sizing: content-box;
|
||||||
|
-moz-box-sizing: content-box;
|
||||||
|
box-sizing: content-box;
|
||||||
|
}
|
||||||
|
input[type="search"]::-webkit-search-decoration,
|
||||||
|
input[type="search"]::-webkit-search-cancel-button {
|
||||||
|
-webkit-appearance: none; // Inner-padding issues in Chrome OSX, Safari 5
|
||||||
|
}
|
||||||
|
textarea {
|
||||||
|
overflow: auto; // Remove vertical scrollbar in IE6-9
|
||||||
|
vertical-align: top; // Readability and alignment cross-browser
|
||||||
|
}
|
@ -0,0 +1,29 @@
|
|||||||
|
// Scaffolding
|
||||||
|
// Basic and global styles for generating a grid system, structural layout, and page templates
|
||||||
|
// -------------------------------------------------------------------------------------------
|
||||||
|
|
||||||
|
|
||||||
|
// STRUCTURAL LAYOUT
|
||||||
|
// -----------------
|
||||||
|
|
||||||
|
body {
|
||||||
|
margin: 0;
|
||||||
|
font-family: $baseFontFamily;
|
||||||
|
font-size: $baseFontSize;
|
||||||
|
line-height: $baseLineHeight;
|
||||||
|
color: $textColor;
|
||||||
|
background-color: $white;
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
// LINKS
|
||||||
|
// -----
|
||||||
|
|
||||||
|
a {
|
||||||
|
color: $linkColor;
|
||||||
|
text-decoration: none;
|
||||||
|
}
|
||||||
|
a:hover {
|
||||||
|
color: $linkColorHover;
|
||||||
|
text-decoration: underline;
|
||||||
|
}
|
157
xstatic/pkg/bootstrap_scss/data/scss/bootstrap/_sprites.scss
Normal file
157
xstatic/pkg/bootstrap_scss/data/scss/bootstrap/_sprites.scss
Normal file
@ -0,0 +1,157 @@
|
|||||||
|
// SPRITES
|
||||||
|
// Glyphs and icons for buttons, nav, and more
|
||||||
|
// -------------------------------------------
|
||||||
|
|
||||||
|
|
||||||
|
// ICONS
|
||||||
|
// -----
|
||||||
|
|
||||||
|
// All icons receive the styles of the <i> tag with a base class
|
||||||
|
// of .i and are then given a unique class to add width, height,
|
||||||
|
// and background-position. Your resulting HTML will look like
|
||||||
|
// <i class="icon-inbox"></i>.
|
||||||
|
|
||||||
|
// For the white version of the icons, just add the .icon-white class:
|
||||||
|
// <i class="icon-inbox icon-white"></i>
|
||||||
|
|
||||||
|
[class^="icon-"], [class*=" icon-"] {
|
||||||
|
display: inline-block;
|
||||||
|
width: 14px;
|
||||||
|
height: 14px;
|
||||||
|
line-height: 14px;
|
||||||
|
vertical-align: text-top;
|
||||||
|
background-image: asset-url("glyphicons-halflings.png", image);
|
||||||
|
background-position: 14px 14px;
|
||||||
|
background-repeat: no-repeat;
|
||||||
|
|
||||||
|
@include ie7-restore-right-whitespace();
|
||||||
|
}
|
||||||
|
.icon-white {
|
||||||
|
background-image: asset-url("glyphicons-halflings-white.png", image);
|
||||||
|
}
|
||||||
|
|
||||||
|
.icon-glass { background-position: 0 0; }
|
||||||
|
.icon-music { background-position: -24px 0; }
|
||||||
|
.icon-search { background-position: -48px 0; }
|
||||||
|
.icon-envelope { background-position: -72px 0; }
|
||||||
|
.icon-heart { background-position: -96px 0; }
|
||||||
|
.icon-star { background-position: -120px 0; }
|
||||||
|
.icon-star-empty { background-position: -144px 0; }
|
||||||
|
.icon-user { background-position: -168px 0; }
|
||||||
|
.icon-film { background-position: -192px 0; }
|
||||||
|
.icon-th-large { background-position: -216px 0; }
|
||||||
|
.icon-th { background-position: -240px 0; }
|
||||||
|
.icon-th-list { background-position: -264px 0; }
|
||||||
|
.icon-ok { background-position: -288px 0; }
|
||||||
|
.icon-remove { background-position: -312px 0; }
|
||||||
|
.icon-zoom-in { background-position: -336px 0; }
|
||||||
|
.icon-zoom-out { background-position: -360px 0; }
|
||||||
|
.icon-off { background-position: -384px 0; }
|
||||||
|
.icon-signal { background-position: -408px 0; }
|
||||||
|
.icon-cog { background-position: -432px 0; }
|
||||||
|
.icon-trash { background-position: -456px 0; }
|
||||||
|
|
||||||
|
.icon-home { background-position: 0 -24px; }
|
||||||
|
.icon-file { background-position: -24px -24px; }
|
||||||
|
.icon-time { background-position: -48px -24px; }
|
||||||
|
.icon-road { background-position: -72px -24px; }
|
||||||
|
.icon-download-alt { background-position: -96px -24px; }
|
||||||
|
.icon-download { background-position: -120px -24px; }
|
||||||
|
.icon-upload { background-position: -144px -24px; }
|
||||||
|
.icon-inbox { background-position: -168px -24px; }
|
||||||
|
.icon-play-circle { background-position: -192px -24px; }
|
||||||
|
.icon-repeat { background-position: -216px -24px; }
|
||||||
|
.icon-refresh { background-position: -240px -24px; }
|
||||||
|
.icon-list-alt { background-position: -264px -24px; }
|
||||||
|
.icon-lock { background-position: -287px -24px; } // 1px off
|
||||||
|
.icon-flag { background-position: -312px -24px; }
|
||||||
|
.icon-headphones { background-position: -336px -24px; }
|
||||||
|
.icon-volume-off { background-position: -360px -24px; }
|
||||||
|
.icon-volume-down { background-position: -384px -24px; }
|
||||||
|
.icon-volume-up { background-position: -408px -24px; }
|
||||||
|
.icon-qrcode { background-position: -432px -24px; }
|
||||||
|
.icon-barcode { background-position: -456px -24px; }
|
||||||
|
|
||||||
|
.icon-tag { background-position: 0 -48px; }
|
||||||
|
.icon-tags { background-position: -25px -48px; } // 1px off
|
||||||
|
.icon-book { background-position: -48px -48px; }
|
||||||
|
.icon-bookmark { background-position: -72px -48px; }
|
||||||
|
.icon-print { background-position: -96px -48px; }
|
||||||
|
.icon-camera { background-position: -120px -48px; }
|
||||||
|
.icon-font { background-position: -144px -48px; }
|
||||||
|
.icon-bold { background-position: -167px -48px; } // 1px off
|
||||||
|
.icon-italic { background-position: -192px -48px; }
|
||||||
|
.icon-text-height { background-position: -216px -48px; }
|
||||||
|
.icon-text-width { background-position: -240px -48px; }
|
||||||
|
.icon-align-left { background-position: -264px -48px; }
|
||||||
|
.icon-align-center { background-position: -288px -48px; }
|
||||||
|
.icon-align-right { background-position: -312px -48px; }
|
||||||
|
.icon-align-justify { background-position: -336px -48px; }
|
||||||
|
.icon-list { background-position: -360px -48px; }
|
||||||
|
.icon-indent-left { background-position: -384px -48px; }
|
||||||
|
.icon-indent-right { background-position: -408px -48px; }
|
||||||
|
.icon-facetime-video { background-position: -432px -48px; }
|
||||||
|
.icon-picture { background-position: -456px -48px; }
|
||||||
|
|
||||||
|
.icon-pencil { background-position: 0 -72px; }
|
||||||
|
.icon-map-marker { background-position: -24px -72px; }
|
||||||
|
.icon-adjust { background-position: -48px -72px; }
|
||||||
|
.icon-tint { background-position: -72px -72px; }
|
||||||
|
.icon-edit { background-position: -96px -72px; }
|
||||||
|
.icon-share { background-position: -120px -72px; }
|
||||||
|
.icon-check { background-position: -144px -72px; }
|
||||||
|
.icon-move { background-position: -168px -72px; }
|
||||||
|
.icon-step-backward { background-position: -192px -72px; }
|
||||||
|
.icon-fast-backward { background-position: -216px -72px; }
|
||||||
|
.icon-backward { background-position: -240px -72px; }
|
||||||
|
.icon-play { background-position: -264px -72px; }
|
||||||
|
.icon-pause { background-position: -288px -72px; }
|
||||||
|
.icon-stop { background-position: -312px -72px; }
|
||||||
|
.icon-forward { background-position: -336px -72px; }
|
||||||
|
.icon-fast-forward { background-position: -360px -72px; }
|
||||||
|
.icon-step-forward { background-position: -384px -72px; }
|
||||||
|
.icon-eject { background-position: -408px -72px; }
|
||||||
|
.icon-chevron-left { background-position: -432px -72px; }
|
||||||
|
.icon-chevron-right { background-position: -456px -72px; }
|
||||||
|
|
||||||
|
.icon-plus-sign { background-position: 0 -96px; }
|
||||||
|
.icon-minus-sign { background-position: -24px -96px; }
|
||||||
|
.icon-remove-sign { background-position: -48px -96px; }
|
||||||
|
.icon-ok-sign { background-position: -72px -96px; }
|
||||||
|
.icon-question-sign { background-position: -96px -96px; }
|
||||||
|
.icon-info-sign { background-position: -120px -96px; }
|
||||||
|
.icon-screenshot { background-position: -144px -96px; }
|
||||||
|
.icon-remove-circle { background-position: -168px -96px; }
|
||||||
|
.icon-ok-circle { background-position: -192px -96px; }
|
||||||
|
.icon-ban-circle { background-position: -216px -96px; }
|
||||||
|
.icon-arrow-left { background-position: -240px -96px; }
|
||||||
|
.icon-arrow-right { background-position: -264px -96px; }
|
||||||
|
.icon-arrow-up { background-position: -289px -96px; } // 1px off
|
||||||
|
.icon-arrow-down { background-position: -312px -96px; }
|
||||||
|
.icon-share-alt { background-position: -336px -96px; }
|
||||||
|
.icon-resize-full { background-position: -360px -96px; }
|
||||||
|
.icon-resize-small { background-position: -384px -96px; }
|
||||||
|
.icon-plus { background-position: -408px -96px; }
|
||||||
|
.icon-minus { background-position: -433px -96px; }
|
||||||
|
.icon-asterisk { background-position: -456px -96px; }
|
||||||
|
|
||||||
|
.icon-exclamation-sign { background-position: 0 -120px; }
|
||||||
|
.icon-gift { background-position: -24px -120px; }
|
||||||
|
.icon-leaf { background-position: -48px -120px; }
|
||||||
|
.icon-fire { background-position: -72px -120px; }
|
||||||
|
.icon-eye-open { background-position: -96px -120px; }
|
||||||
|
.icon-eye-close { background-position: -120px -120px; }
|
||||||
|
.icon-warning-sign { background-position: -144px -120px; }
|
||||||
|
.icon-plane { background-position: -168px -120px; }
|
||||||
|
.icon-calendar { background-position: -192px -120px; }
|
||||||
|
.icon-random { background-position: -216px -120px; }
|
||||||
|
.icon-comment { background-position: -240px -120px; }
|
||||||
|
.icon-magnet { background-position: -264px -120px; }
|
||||||
|
.icon-chevron-up { background-position: -288px -120px; }
|
||||||
|
.icon-chevron-down { background-position: -313px -119px; } // 1px off
|
||||||
|
.icon-retweet { background-position: -336px -120px; }
|
||||||
|
.icon-shopping-cart { background-position: -360px -120px; }
|
||||||
|
.icon-folder-close { background-position: -384px -120px; }
|
||||||
|
.icon-folder-open { background-position: -408px -120px; }
|
||||||
|
.icon-resize-vertical { background-position: -432px -119px; }
|
||||||
|
.icon-resize-horizontal { background-position: -456px -118px; }
|
126
xstatic/pkg/bootstrap_scss/data/scss/bootstrap/_tables.scss
Normal file
126
xstatic/pkg/bootstrap_scss/data/scss/bootstrap/_tables.scss
Normal file
@ -0,0 +1,126 @@
|
|||||||
|
//
|
||||||
|
// Tables.less
|
||||||
|
// Tables for, you guessed it, tabular data
|
||||||
|
// ----------------------------------------
|
||||||
|
|
||||||
|
|
||||||
|
// BASE TABLES
|
||||||
|
// -----------------
|
||||||
|
|
||||||
|
table {
|
||||||
|
max-width: 100%;
|
||||||
|
border-collapse: collapse;
|
||||||
|
border-spacing: 0;
|
||||||
|
}
|
||||||
|
|
||||||
|
// BASELINE STYLES
|
||||||
|
// ---------------
|
||||||
|
|
||||||
|
.table {
|
||||||
|
width: 100%;
|
||||||
|
margin-bottom: $baseLineHeight;
|
||||||
|
// Cells
|
||||||
|
th, td {
|
||||||
|
padding: 8px;
|
||||||
|
line-height: $baseLineHeight;
|
||||||
|
text-align: left;
|
||||||
|
vertical-align: top;
|
||||||
|
border-top: 1px solid #ddd;
|
||||||
|
}
|
||||||
|
th {
|
||||||
|
font-weight: bold;
|
||||||
|
}
|
||||||
|
// Bottom align for column headings
|
||||||
|
thead th {
|
||||||
|
vertical-align: bottom;
|
||||||
|
}
|
||||||
|
// Remove top border from thead by default
|
||||||
|
thead:first-child tr th, thead:first-child tr td {
|
||||||
|
border-top: 0;
|
||||||
|
}
|
||||||
|
// Account for multiple tbody instances
|
||||||
|
tbody + tbody {
|
||||||
|
border-top: 2px solid #ddd;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
// CONDENSED TABLE W/ HALF PADDING
|
||||||
|
// -------------------------------
|
||||||
|
|
||||||
|
.table-condensed {
|
||||||
|
th, td {
|
||||||
|
padding: 4px 5px;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
// BORDERED VERSION
|
||||||
|
// ----------------
|
||||||
|
|
||||||
|
.table-bordered {
|
||||||
|
border: 1px solid #ddd;
|
||||||
|
border-collapse: separate; // Done so we can round those corners!
|
||||||
|
*border-collapse: collapsed; // IE7 can't round corners anyway
|
||||||
|
@include border-radius(4px);
|
||||||
|
th + th, td + td, th + td, td + th {
|
||||||
|
border-left: 1px solid #ddd;
|
||||||
|
}
|
||||||
|
// Prevent a double border
|
||||||
|
thead:first-child tr:first-child th, tbody:first-child tr:first-child th, tbody:first-child tr:first-child td {
|
||||||
|
border-top: 0;
|
||||||
|
}
|
||||||
|
// For first th or td in the first row in the first thead or tbody
|
||||||
|
thead:first-child tr:first-child th:first-child, tbody:first-child tr:first-child td:first-child {
|
||||||
|
@include border-radius(4px 0 0 0);
|
||||||
|
}
|
||||||
|
thead:first-child tr:first-child th:last-child, tbody:first-child tr:first-child td:last-child {
|
||||||
|
@include border-radius(0 4px 0 0);
|
||||||
|
}
|
||||||
|
// For first th or td in the first row in the first thead or tbody
|
||||||
|
thead:last-child tr:last-child th:first-child, tbody:last-child tr:last-child td:first-child {
|
||||||
|
@include border-radius(0 0 0 4px);
|
||||||
|
}
|
||||||
|
thead:last-child tr:last-child th:last-child, tbody:last-child tr:last-child td:last-child {
|
||||||
|
@include border-radius(0 0 4px 0);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
// ZEBRA-STRIPING
|
||||||
|
// --------------
|
||||||
|
|
||||||
|
// Default zebra-stripe styles (alternating gray and transparent backgrounds)
|
||||||
|
.table-striped {
|
||||||
|
tbody {
|
||||||
|
tr:nth-child(odd) td, tr:nth-child(odd) th {
|
||||||
|
background-color: #f9f9f9;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
// HOVER EFFECT
|
||||||
|
// ------------
|
||||||
|
// Placed here since it has to come after the potential zebra striping
|
||||||
|
.table {
|
||||||
|
tbody tr:hover td, tbody tr:hover th {
|
||||||
|
background-color: #f5f5f5;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
// TABLE CELL SIZING
|
||||||
|
// -----------------
|
||||||
|
|
||||||
|
// Change the columns
|
||||||
|
@mixin tableColumns($columnSpan: 1) {
|
||||||
|
float: none;
|
||||||
|
width: (($gridColumnWidth) * $columnSpan) + ($gridGutterWidth * ($columnSpan - 1)) - 16;
|
||||||
|
margin-left: 0;
|
||||||
|
}
|
||||||
|
table {
|
||||||
|
@for $i from 1 through $gridColumns {
|
||||||
|
.span#{$i} { @include tableColumns($i); }
|
||||||
|
}
|
||||||
|
}
|
@ -0,0 +1,35 @@
|
|||||||
|
// THUMBNAILS
|
||||||
|
// ----------
|
||||||
|
|
||||||
|
.thumbnails {
|
||||||
|
margin-left: -$gridGutterWidth;
|
||||||
|
list-style: none;
|
||||||
|
@include clearfix();
|
||||||
|
}
|
||||||
|
.thumbnails > li {
|
||||||
|
float: left;
|
||||||
|
margin: 0 0 $baseLineHeight $gridGutterWidth;
|
||||||
|
}
|
||||||
|
.thumbnail {
|
||||||
|
display: block;
|
||||||
|
padding: 4px;
|
||||||
|
line-height: 1;
|
||||||
|
border: 1px solid #ddd;
|
||||||
|
@include border-radius(4px);
|
||||||
|
@include box-shadow(0 1px 1px rgba(0,0,0,.075));
|
||||||
|
}
|
||||||
|
// Add a hover state for linked versions only
|
||||||
|
a.thumbnail:hover {
|
||||||
|
border-color: $linkColor;
|
||||||
|
@include box-shadow(0 1px 4px rgba(0,105,214,.25));
|
||||||
|
}
|
||||||
|
// Images and captions
|
||||||
|
.thumbnail > img {
|
||||||
|
display: block;
|
||||||
|
max-width: 100%;
|
||||||
|
margin-left: auto;
|
||||||
|
margin-right: auto;
|
||||||
|
}
|
||||||
|
.thumbnail .caption {
|
||||||
|
padding: 9px;
|
||||||
|
}
|
35
xstatic/pkg/bootstrap_scss/data/scss/bootstrap/_tooltip.scss
Normal file
35
xstatic/pkg/bootstrap_scss/data/scss/bootstrap/_tooltip.scss
Normal file
@ -0,0 +1,35 @@
|
|||||||
|
// TOOLTIP
|
||||||
|
// ------=
|
||||||
|
|
||||||
|
.tooltip {
|
||||||
|
position: absolute;
|
||||||
|
z-index: $zindexTooltip;
|
||||||
|
display: block;
|
||||||
|
visibility: visible;
|
||||||
|
padding: 5px;
|
||||||
|
font-size: 11px;
|
||||||
|
@include opacity(0);
|
||||||
|
&.in { @include opacity(0.8); }
|
||||||
|
&.top { margin-top: -2px; }
|
||||||
|
&.right { margin-left: 2px; }
|
||||||
|
&.bottom { margin-top: 2px; }
|
||||||
|
&.left { margin-left: -2px; }
|
||||||
|
&.top .tooltip-arrow { @include popoverArrowTop(); }
|
||||||
|
&.left .tooltip-arrow { @include popoverArrowLeft(); }
|
||||||
|
&.bottom .tooltip-arrow { @include popoverArrowBottom(); }
|
||||||
|
&.right .tooltip-arrow { @include popoverArrowRight(); }
|
||||||
|
}
|
||||||
|
.tooltip-inner {
|
||||||
|
max-width: 200px;
|
||||||
|
padding: 3px 8px;
|
||||||
|
color: $white;
|
||||||
|
text-align: center;
|
||||||
|
text-decoration: none;
|
||||||
|
background-color: $black;
|
||||||
|
@include border-radius(4px);
|
||||||
|
}
|
||||||
|
.tooltip-arrow {
|
||||||
|
position: absolute;
|
||||||
|
width: 0;
|
||||||
|
height: 0;
|
||||||
|
}
|
209
xstatic/pkg/bootstrap_scss/data/scss/bootstrap/_type.scss
Normal file
209
xstatic/pkg/bootstrap_scss/data/scss/bootstrap/_type.scss
Normal file
@ -0,0 +1,209 @@
|
|||||||
|
// Typography.less
|
||||||
|
// Headings, body text, lists, code, and more for a versatile and durable typography system
|
||||||
|
// ----------------------------------------------------------------------------------------
|
||||||
|
|
||||||
|
|
||||||
|
// BODY TEXT
|
||||||
|
// ---------
|
||||||
|
|
||||||
|
p {
|
||||||
|
margin: 0 0 $baseLineHeight / 2;
|
||||||
|
font-family: $baseFontFamily;
|
||||||
|
font-size: $baseFontSize;
|
||||||
|
line-height: $baseLineHeight;
|
||||||
|
small {
|
||||||
|
font-size: $baseFontSize - 2;
|
||||||
|
color: $grayLight;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
.lead {
|
||||||
|
margin-bottom: $baseLineHeight;
|
||||||
|
font-size: 20px;
|
||||||
|
font-weight: 200;
|
||||||
|
line-height: $baseLineHeight * 1.5;
|
||||||
|
}
|
||||||
|
|
||||||
|
// HEADINGS
|
||||||
|
// --------
|
||||||
|
|
||||||
|
h1, h2, h3, h4, h5, h6 {
|
||||||
|
margin: 0;
|
||||||
|
font-weight: bold;
|
||||||
|
color: $grayDark;
|
||||||
|
text-rendering: optimizelegibility; // Fix the character spacing for headings
|
||||||
|
small {
|
||||||
|
font-weight: normal;
|
||||||
|
color: $grayLight;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
h1 {
|
||||||
|
font-size: 30px;
|
||||||
|
line-height: $baseLineHeight * 2;
|
||||||
|
small {
|
||||||
|
font-size: 18px;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
h2 {
|
||||||
|
font-size: 24px;
|
||||||
|
line-height: $baseLineHeight * 2;
|
||||||
|
small {
|
||||||
|
font-size: 18px;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
h3 {
|
||||||
|
line-height: $baseLineHeight * 1.5;
|
||||||
|
font-size: 18px;
|
||||||
|
small {
|
||||||
|
font-size: 14px;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
h4, h5, h6 {
|
||||||
|
line-height: $baseLineHeight;
|
||||||
|
}
|
||||||
|
h4 {
|
||||||
|
font-size: 14px;
|
||||||
|
small {
|
||||||
|
font-size: 12px;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
h5 {
|
||||||
|
font-size: 12px;
|
||||||
|
}
|
||||||
|
h6 {
|
||||||
|
font-size: 11px;
|
||||||
|
color: $grayLight;
|
||||||
|
text-transform: uppercase;
|
||||||
|
}
|
||||||
|
|
||||||
|
// Page header
|
||||||
|
.page-header {
|
||||||
|
padding-bottom: $baseLineHeight - 1;
|
||||||
|
margin: $baseLineHeight 0;
|
||||||
|
border-bottom: 1px solid $grayLighter;
|
||||||
|
}
|
||||||
|
.page-header h1 {
|
||||||
|
line-height: 1;
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
// LISTS
|
||||||
|
// -----
|
||||||
|
|
||||||
|
// Unordered and Ordered lists
|
||||||
|
ul, ol {
|
||||||
|
padding: 0;
|
||||||
|
margin: 0 0 $baseLineHeight / 2 25px;
|
||||||
|
}
|
||||||
|
ul ul, ul ol, ol ol, ol ul {
|
||||||
|
margin-bottom: 0;
|
||||||
|
}
|
||||||
|
ul {
|
||||||
|
list-style: disc;
|
||||||
|
}
|
||||||
|
ol {
|
||||||
|
list-style: decimal;
|
||||||
|
}
|
||||||
|
li {
|
||||||
|
line-height: $baseLineHeight;
|
||||||
|
}
|
||||||
|
ul.unstyled, ol.unstyled {
|
||||||
|
margin-left: 0;
|
||||||
|
list-style: none;
|
||||||
|
}
|
||||||
|
|
||||||
|
// Description Lists
|
||||||
|
dl {
|
||||||
|
margin-bottom: $baseLineHeight;
|
||||||
|
}
|
||||||
|
dt, dd {
|
||||||
|
line-height: $baseLineHeight;
|
||||||
|
}
|
||||||
|
dt {
|
||||||
|
font-weight: bold;
|
||||||
|
}
|
||||||
|
dd {
|
||||||
|
margin-left: $baseLineHeight / 2;
|
||||||
|
}
|
||||||
|
|
||||||
|
// MISC
|
||||||
|
// ----
|
||||||
|
|
||||||
|
// Horizontal rules
|
||||||
|
hr {
|
||||||
|
margin: $baseLineHeight 0;
|
||||||
|
border: 0;
|
||||||
|
border-top: 1px solid $hrBorder;
|
||||||
|
border-bottom: 1px solid $white;
|
||||||
|
}
|
||||||
|
|
||||||
|
// Emphasis
|
||||||
|
strong {
|
||||||
|
font-weight: bold;
|
||||||
|
}
|
||||||
|
em {
|
||||||
|
font-style: italic;
|
||||||
|
}
|
||||||
|
.muted {
|
||||||
|
color: $grayLight;
|
||||||
|
}
|
||||||
|
|
||||||
|
// Abbreviations and acronyms
|
||||||
|
abbr {
|
||||||
|
font-size: 90%;
|
||||||
|
text-transform: uppercase;
|
||||||
|
border-bottom: 1px dotted #ddd;
|
||||||
|
cursor: help;
|
||||||
|
}
|
||||||
|
|
||||||
|
// Blockquotes
|
||||||
|
blockquote {
|
||||||
|
padding: 0 0 0 15px;
|
||||||
|
margin: 0 0 $baseLineHeight;
|
||||||
|
border-left: 5px solid $grayLighter;
|
||||||
|
p {
|
||||||
|
margin-bottom: 0;
|
||||||
|
@include font-shorthand(16px,300,$baseLineHeight * 1.25);
|
||||||
|
}
|
||||||
|
small {
|
||||||
|
display: block;
|
||||||
|
line-height: $baseLineHeight;
|
||||||
|
color: $grayLight;
|
||||||
|
&:before {
|
||||||
|
content: '\2014 \00A0';
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
// Float right with text-align: right
|
||||||
|
&.pull-right {
|
||||||
|
float: right;
|
||||||
|
padding-left: 0;
|
||||||
|
padding-right: 15px;
|
||||||
|
border-left: 0;
|
||||||
|
border-right: 5px solid $grayLighter;
|
||||||
|
p, small {
|
||||||
|
text-align: right;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
// Quotes
|
||||||
|
q:before, q:after, blockquote:before, blockquote:after {
|
||||||
|
content: "";
|
||||||
|
}
|
||||||
|
|
||||||
|
// Addresses
|
||||||
|
address {
|
||||||
|
display: block;
|
||||||
|
margin-bottom: $baseLineHeight;
|
||||||
|
line-height: $baseLineHeight;
|
||||||
|
font-style: normal;
|
||||||
|
}
|
||||||
|
|
||||||
|
// Misc
|
||||||
|
small {
|
||||||
|
font-size: 100%;
|
||||||
|
}
|
||||||
|
cite {
|
||||||
|
font-style: normal;
|
||||||
|
}
|
@ -0,0 +1,23 @@
|
|||||||
|
// UTILITY CLASSES
|
||||||
|
// ---------------
|
||||||
|
|
||||||
|
// Quick floats
|
||||||
|
.pull-right {
|
||||||
|
float: right;
|
||||||
|
}
|
||||||
|
.pull-left {
|
||||||
|
float: left;
|
||||||
|
}
|
||||||
|
|
||||||
|
// Toggling content
|
||||||
|
.hide {
|
||||||
|
display: none;
|
||||||
|
}
|
||||||
|
.show {
|
||||||
|
display: block;
|
||||||
|
}
|
||||||
|
|
||||||
|
// Visibility
|
||||||
|
.invisible {
|
||||||
|
visibility: hidden;
|
||||||
|
}
|
103
xstatic/pkg/bootstrap_scss/data/scss/bootstrap/_variables.scss
Normal file
103
xstatic/pkg/bootstrap_scss/data/scss/bootstrap/_variables.scss
Normal file
@ -0,0 +1,103 @@
|
|||||||
|
// Variables.less
|
||||||
|
// Variables to customize the look and feel of Bootstrap
|
||||||
|
// -----------------------------------------------------
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
// GLOBAL VALUES
|
||||||
|
// --------------------------------------------------
|
||||||
|
|
||||||
|
// Links
|
||||||
|
$linkColor: #08c !default;
|
||||||
|
$linkColorHover: darken($linkColor, 15%) !default;
|
||||||
|
|
||||||
|
// Grays
|
||||||
|
$black: #000 !default;
|
||||||
|
$grayDarker: #222 !default;
|
||||||
|
$grayDark: #333 !default;
|
||||||
|
$gray: #555 !default;
|
||||||
|
$grayLight: #999 !default;
|
||||||
|
$grayLighter: #eee !default;
|
||||||
|
$white: #fff !default;
|
||||||
|
|
||||||
|
// Accent colors
|
||||||
|
$blue: #049cdb !default;
|
||||||
|
$blueDark: #0064cd !default;
|
||||||
|
$green: #46a546 !default;
|
||||||
|
$red: #9d261d !default;
|
||||||
|
$yellow: #ffc40d !default;
|
||||||
|
$orange: #f89406 !default;
|
||||||
|
$pink: #c3325f !default;
|
||||||
|
$purple: #7a43b6 !default;
|
||||||
|
|
||||||
|
// Typography
|
||||||
|
$baseFontSize: 13px !default;
|
||||||
|
$baseFontFamily: "Helvetica Neue", Helvetica, Arial, sans-serif !default;
|
||||||
|
$baseLineHeight: 18px !default;
|
||||||
|
$textColor: $grayDark !default;
|
||||||
|
|
||||||
|
// Buttons
|
||||||
|
$primaryButtonBackground: $linkColor !default;
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
// COMPONENT VARIABLES
|
||||||
|
// --------------------------------------------------
|
||||||
|
|
||||||
|
// Z-index master list
|
||||||
|
// Used for a bird's eye view of components dependent on the z-axis
|
||||||
|
// Try to avoid customizing these :)
|
||||||
|
$zindexDropdown: 1000;
|
||||||
|
$zindexPopover: 1010;
|
||||||
|
$zindexTooltip: 1020;
|
||||||
|
$zindexFixedNavbar: 1030;
|
||||||
|
$zindexModalBackdrop: 1040;
|
||||||
|
$zindexModal: 1050;
|
||||||
|
|
||||||
|
// Input placeholder text color
|
||||||
|
$placeholderText: $grayLight !default;
|
||||||
|
|
||||||
|
// HR border color
|
||||||
|
$hrBorder: $grayLighter !default;
|
||||||
|
|
||||||
|
// Navbar
|
||||||
|
$navbarHeight: 40px !default;
|
||||||
|
$navbarBackground: $grayDarker !default;
|
||||||
|
$navbarBackgroundHighlight: $grayDark !default;
|
||||||
|
$navbarLinkBackgroundHover: transparent !default;
|
||||||
|
|
||||||
|
$navbarText: $grayLight !default;
|
||||||
|
$navbarLinkColor: $grayLight !default;
|
||||||
|
$navbarLinkColorHover: $white !default;
|
||||||
|
|
||||||
|
// Form states and alerts
|
||||||
|
$warningText: #c09853 !default;
|
||||||
|
$warningBackground: #fcf8e3 !default;
|
||||||
|
$warningBorder: darken(adjust-hue($warningBackground, -10), 3%) !default;
|
||||||
|
|
||||||
|
$errorText: #b94a48 !default;
|
||||||
|
$errorBackground: #f2dede !default;
|
||||||
|
$errorBorder: darken(adjust-hue($errorBackground, -10), 3%) !default;
|
||||||
|
|
||||||
|
$successText: #468847 !default;
|
||||||
|
$successBackground: #dff0d8 !default;
|
||||||
|
$successBorder: darken(adjust-hue($successBackground, -10), 5%) !default;
|
||||||
|
|
||||||
|
$infoText: #3a87ad !default;
|
||||||
|
$infoBackground: #d9edf7 !default;
|
||||||
|
$infoBorder: darken(adjust-hue($infoBackground, -10), 7%) !default;
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
// GRID
|
||||||
|
// --------------------------------------------------
|
||||||
|
|
||||||
|
// Default 940px grid
|
||||||
|
$gridColumns: 12 !default;
|
||||||
|
$gridColumnWidth: 60px !default;
|
||||||
|
$gridGutterWidth: 20px !default;
|
||||||
|
$gridRowWidth: ($gridColumns * $gridColumnWidth) + ($gridGutterWidth * ($gridColumns - 1)) !default;
|
||||||
|
|
||||||
|
// Fluid grid
|
||||||
|
$fluidGridColumnWidth: 6.382978723% !default;
|
||||||
|
$fluidGridGutterWidth: 2.127659574% !default;
|
17
xstatic/pkg/bootstrap_scss/data/scss/bootstrap/_wells.scss
Normal file
17
xstatic/pkg/bootstrap_scss/data/scss/bootstrap/_wells.scss
Normal file
@ -0,0 +1,17 @@
|
|||||||
|
// WELLS
|
||||||
|
// -----
|
||||||
|
|
||||||
|
.well {
|
||||||
|
min-height: 20px;
|
||||||
|
padding: 19px;
|
||||||
|
margin-bottom: 20px;
|
||||||
|
background-color: #f5f5f5;
|
||||||
|
border: 1px solid #eee;
|
||||||
|
border: 1px solid rgba(0,0,0,.05);
|
||||||
|
@include border-radius(4px);
|
||||||
|
@include box-shadow(inset 0 1px 1px rgba(0,0,0,.05));
|
||||||
|
blockquote {
|
||||||
|
border-color: #ddd;
|
||||||
|
border-color: rgba(0,0,0,.15);
|
||||||
|
}
|
||||||
|
}
|
Loading…
Reference in New Issue
Block a user