Packages

A navigation tree representation with helpers to generate HTML out of it - depending of userroles. Also creates nice HTML navbars for Bootstrap. Implemented as Agent to hold config state.

Current section

Files

Jump to
navigation_tree doc css style.css
Raw

doc/css/style.css

/*** DOCUMENT STRUCTURE: module_template.eex ***
body
section#sidebar [.in_search]
h1#full_list_header
h2#sub_list_header
div#nav
div#search [.loading] > input#search_field
ul#full_list
li.node [.collpased, .search_uncollapsed, .found]
a.toggle
a.object_link
span.node_name
li.docs [.collpased, .search_uncollapsed, .found]
a.toggle
a.object_link
span.node_name
...
div.no_results
section#content
div.breadcrumbs
h1
small
ul.summary_links
li > a
...
section.docstring#moduledoc
a.view_source
section.details_list#summary_details
h1
table.summary
tr
td.summary_signature > a
td.summary_synopsis > p
...
section.details_list#types_details
h1
div.type_detail
p.typespec > a
...
section.details_list#functions_details
h1
section.detail
div.detail_header
span.signature > strong
div.detail_header_links
span.detail_type
a.detail_link
a.to_top_link
ul.spec
li > a
...
section.docstring
a.view_source
...
*/
/* DOCUMENT STYLES */
html,
body {
overflow-x: hidden; /* Prevent scroll on narrow devices */
}
body {
font: 13px "Lucida Sans", "Lucida Grande", Verdana, Arial, sans-serif;
line-height: 1.618;
}
#sidebar a:link,
#sidebar a:visited {
color: #05a;
text-decoration: none;
}
#sidebar li {
color: #888;
cursor: pointer;
}
#sidebar li:hover {
background: #ddd;
}
#sidebar span.node_name {
font-size: 0.8em;
}
#sidebar li {
white-space: nowrap;
cursor: default;
}
/* HEADERS */
#sidebar h1 {
font-size: 1.4em;
margin: 0;
padding: 6px 10px 0;
}
#sidebar h2 {
font-size: 0.9em;
margin: 0 10px 12px;
}
/* NAVIGATION BAR */
.nav {
margin: 0 0 10px 5px;
font-size: 0.9em;
color: #aaa;
}
.nav a:link,
.nav a:visited {
color: #358;
}
.nav a:hover {
background: transparent;
color: #5af;
}
.nav span {
border-left: 1px solid #ccc;
padding: 0 3px 0 5px;
}
.nav span:first-child {
border-left: 0;
border-radius: 3px;
}
.nav span.selected {
text-decoration: underline;
}
/* SEARCH BOX */
#search {
font-size: 0.9em;
color: #888;
margin: 0 0 6px 5px;
}
#search .col-xs-10 {
padding: 0;
}
#search .col-xs-2 {
font-size: 1.6em;
padding-right: 3px;
}
#search button {
outline: 0;
z-index: 0;
}
#search .glyphicon.spinning {
-moz-animation: spin 1s linear infinite;
-webkit-animation: spin 1s linear infinite;
animation: spin 1s linear infinite;
}
@-moz-keyframes spin {
0% { -moz-transform: rotate(0deg); }
25% { -moz-transform: rotate(90deg); }
50% { -moz-transform: rotate(180deg); }
75% { -moz-transform: rotate(270deg); }
100% { -moz-transform: rotate(360deg); }
}
@-webkit-keyframes spin {
0% { -webkit-transform: rotate(0deg); }
25% { -webkit-transform: rotate(90deg); }
50% { -webkit-transform: rotate(180deg); }
75% { -webkit-transform: rotate(270deg); }
100% { -webkit-transform: rotate(360deg); }
}
@keyframes spin {
0% { transform: rotate(0deg); }
25% { transform: rotate(90deg); }
50% { transform: rotate(180deg); }
75% { transform: rotate(270deg); }
100% { transform: rotate(360deg); }
}
#no_results {
margin-left: 7px;
padding: 7px 12px;
}
/* FULL LIST OF CONTENTS */
#full_list {
list-style: none;
margin-left: 0;
padding: 0;
}
#full_list ul {
margin: 0;
padding: 0;
}
#full_list li {
margin: 0;
padding: 5px 5px 5px 0;
font-size: 1.1em;
list-style: none;
}
#full_list li.node {
padding-left: 25px;
}
#full_list li.docs {
padding: 0;
}
#full_list li.docs li {
padding-left: 25px;
}
#full_list li span.node_name {
display: none;
}
#full_list .no_padding {
padding-left: 0;
}
/* while searching */
.in_search #full_list ul {
margin-left: 0;
}
.in_search #full_list li {
display: none;
}
.in_search #full_list li.found {
display: list-item;
}
.in_search #full_list li a.toggle {
display: none;
}
.in_search #full_list li span.node_name {
display: block;
}
/* collapsed menu */
#full_list .search_uncollapsed,
#full_list .search_uncollapsed ul {
display: block !important;
}
#full_list ul.collapsed ul,
#full_list ul.collapsed li,
#full_list li.collapsed ul,
#full_list li.collapsed li {
display: none;
}
#full_list ul.search_uncollapsed li.found,
#full_list li.search_uncollapsed li.found {
display: list-item;
}
#full_list li.deprecated {
text-decoration: line-through;
font-style: italic;
}
#full_list li.r1 {
background: #f0f0f0;
}
#full_list li.r2 {
background: #fafafa;
}
/* link properties */
#full_list li a.toggle {
display: block;
float: left;
position: relative;
left: -5px;
top: 4px;
width: 10px;
height: 9px;
margin-left: -10px;
text-indent: -999px;
background: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABQAAAASCAYAAABb0P4QAAAABHNCSVQICAgIfAhkiAAAAAlwSFlzAAAK8AAACvABQqw0mAAAABx0RVh0U29mdHdhcmUAQWRvYmUgRmlyZXdvcmtzIENTM5jWRgMAAAAVdEVYdENyZWF0aW9uIFRpbWUAMy8xNC8wOeNZPpQAAAE2SURBVDiNrZTBccIwEEXfelIAHUA6CZ24BGaWO+FuzZAK4k6gg5QAdGAq+Bxs2Yqx7BzyL7Llp/VfzZeQhCTc/ezuGzKKnKSzpCxXJM8fwNXda3df5RZETlIt6YUzSQDs93sl8w3wBZxCCE10GM1OcWbWjB2mWgEH4Mfdyxm3PSepBHibgQE2wLe7r4HjEidpnXMYdQPKEMJcsZ4zs2POYQOcaPfwMVOo58zsAdMt18BuoVDPxUJRacELbXv3hUIX2vYmOUvi8C8ydz/ThjXrqKqqLbDIAdsCKBd+Wo7GWa7o9qzOQHVVVXeAbs+yHHCH4aTsaCOQqunmUy1yBUAXkdMIfMlgF5EXLo2OpV/c/Up7jG4hhHcYLgWzAZXUc2b2ixsfvc/RmNNfOXD3Q/oeL9axJE1yT9IOoUu6MGUkAAAAAElFTkSuQmCC) no-repeat bottom left;
cursor: default;
}
#full_list li.collapsed a.toggle {
opacity: 0.5;
cursor: default;
background-position: top left;
}
#full_list li.clicked {
background: #05a;
color: #ccc;
}
#full_list li.clicked a:link,
#full_list li.clicked a:visited {
color: #eee;
}
#full_list li.clicked a.toggle {
opacity: 0.5;
background-position: bottom right;
}
#full_list li.collapsed.clicked a.toggle {
background-position: top right;
}
/* DOCUMENT STYLES */
a:link,
a:visited {
color: #05a;
text-decoration: none;
}
a:hover {
color: #27c;
}
h1:not(#full_list_header) {
font-size: 25px;
border-top: 0;
margin-top: 0;
padding-top: 4px;
}
h1 small {
color: #888;
font-size: 18px;
}
h2:not(#sub_list_header) {
padding: 0 0 3px 0;
border-bottom: 1px #aaa solid;
font-size: 1.4em;
margin: 1.8em 0 0.5em;
}
section.details_list h1 {
border-bottom: 1px dotted #aaa;
padding-top: 35px !important;
padding-bottom: 10px;
}
table {
border: 1px solid #aaa;
border-collapse: collapse;
margin-top: 1em;
empty-cells: show;
}
table th {
background: #fafafa;
}
table th,
table td {
border: 1px solid #ddd;
padding: 0.4em 1em 0.4em 0.4em;
}
table tr:nth-child(odd) {
background: #f0f0f0;
}
table tr:nth-child(even) {
background: #fafafa;
}
/* OTHERS */
li.r1 {
background: #f0f0f0;
}
li.r2 {
background: #fafafa;
}
div.breadcrumbs {
padding: 3px 6px;
background-color: #EEE;
margin: 0 -15px 10px;
line-height: 28px;
display: block;
}
/* SUMMARY LINKS */
ul.summary_links {
margin: 0 0 1em 0;
padding: 0;
}
ul.summary_links li {
display: inline-block;
list-style-type: none;
width: 7em;
text-align: center;
background: #f0f0f0;
}
/* EXTERNAL LINKS */
#content a.external span {
padding-left: 3px;
}
/* DOCSTRING */
section.docstring,
p.docstring {
margin-right: 0;
}
.docstring h1,
.docstring h2,
.docstring h3,
.docstring h4 {
padding: 0;
border: 0;
}
.docstring h1 {
font-size: 1.3em;
}
.docstring h2 {
font-size: 1.2em;
}
.docstring h3,
.docstring h4 {
font-size: 1em;
padding-top: 10px;
}
.docstring ul {
padding-left: 20px;
}
.docstring li > p {
margin: 0;
}
/* SUMMARY */
div.detail_header_links {
float: right;
}
a.to_top_link {
padding-left: 0.3em;
font-size: 1em;
font-weight: normal;
}
table.summary {
border: 0;
border-collapse: separate;
}
table.summary tr:nth-child(odd) {
background: #f0f0f0;
}
table.summary tr:nth-child(even) {
background: #fafafa;
}
table.summary tr td {
border: 0;
padding-top: 0.5em;
padding-bottom: 0.5em;
}
td.summary_signature {
padding-right: 0.5em;
}
td.summary_synopsis {
padding-left: 0.5em;
}
td.summary_synopsis p {
margin: 0;
}
/* DETAILS LIST */
.spec,
.typespec {
font: bold 1em Courier, monospace;
}
ul.spec {
padding: 6px 10px 6px 25px;
list-style-type: none;
}
.type_detail {
margin-top: 15px;
padding-top: 0;
}
.type_detail > div.typespec_doc {
margin-left: 3em;
}
.detail {
border-top: 1px dotted #aaa;
margin-top: 15px;
padding-top: 0;
}
.detail:nth-child(2) {
border: 0;
}
div.detail_header {
background: #e5e8ff;
border: 1px solid #d8d8e5;
border-radius: 3px;
margin: 18px 0 13px;
padding: 6px 10px;
}
span.signature {
font: normal 1.1em Monaco, Consolas, Courier, monospace;
}
span.detail_type {
font-style: italic;
font-size: 0.9em;
}
a.detail_link {
padding-left: 0.3em;
}
/* Media print */
@media print {
#sidebar {
display: none;
}
}
/* CUSTOMIZATION FOR elixir.css */
.hljs,pre {
background: #fffde8;
}
pre {
border: #ffe0bb dotted 1px;
}
/*
* Off Canvas
* --------------------------------------------------
*/
@media screen and (min-width: 767px) {
.row-offcanvas {
position: relative;
}
.row-offcanvas-left {
left: 25%; /* 3 columns */
margin-left: 0;
}
.sidebar-offcanvas {
position: fixed;
left: 0;
top: 0;
bottom: 0;
overflow: auto;
border-right: 1px solid #ccc;
}
.sidebar-offcanvas.col-sm-3 {
padding-left: 0;
padding-right: 0;
}
.breadcrumbs button {
display: none;
}
}
@media screen and (max-width: 767px) {
.row-offcanvas {
position: relative;
-webkit-transition: all .25s ease-out;
-o-transition: all .25s ease-out;
transition: all .25s ease-out;
}
.row-offcanvas-left {
left: 0;
}
.row-offcanvas-left
.sidebar-offcanvas {
left: -50%; /* 6 columns */
}
.row-offcanvas-left.active {
left: 50%; /* 6 columns */
}
.sidebar-offcanvas {
position: absolute;
top: 0;
left: 0;
bottom: 0;
overflow: auto;
border-right: 1px solid #ccc;
}
.sidebar-offcanvas.col-xs-6 {
padding-left: 30px;
padding-right: 0;
}
.pull-right button {
margin: 3px 6px 0 0;
}
#content.col-xs-12 {
padding-left: 30px;
}
#content.col-xs-12.offcanvas-active {
padding-left: 15px;
}
.breadcrumbs {
margin: 0 -6px 10px;
}
.breadcrumbs button {
display: inline;
margin-top: -2px;
}
}