From ac6724417cf2abcdcd4a29e97132edef01d0ce22 Mon Sep 17 00:00:00 2001 From: "Yann Esposito (Yogsototh)" Date: Mon, 24 Oct 2022 13:11:47 +0200 Subject: [PATCH] tags --- bb/brut/site.clj | 37 ++++++++++++++++++++++++++++--------- brut.min.css | 2 +- h/docs.html | 35 +++++++++++++++++++++++++---------- src/buttons.less | 3 ++- 4 files changed, 56 insertions(+), 21 deletions(-) diff --git a/bb/brut/site.clj b/bb/brut/site.clj index 17af3fc..7207406 100644 --- a/bb/brut/site.clj +++ b/bb/brut/site.clj @@ -203,7 +203,7 @@ images-section {:title "Images" :cards [images]} text-buttons [:div#text-buttons - [:h3 "Classic"] + [:h3 "Textual buttons"] [:a.tb "tb"] [:a.tb.info "tb info"] [:a.tb.ok "tb ok"] @@ -211,13 +211,12 @@ [:a.tb.err "tb err"] [:a.tb.fatal "tb fatal"]] text-buttons-sizes [:div#text-buttons-sizes - [:h3 "Sizes"] - [:h4 "Inside some text"] - [:div.block "Some text: " - [:a {:class "tb sm info"} "Info"] - [:a {:class "tb ok"} "OK"] - [:a {:class "tb big warn"} "Warn"] - [:a {:class "tb huge err"} "ERR"]]] + [:h3 "Textual Buttons Sizes"] + [:div.block + "Some text: " [:a {:class "tb sm info"} "small button"] [:br] + "Some text: " [:a {:class "tb ok"} "normal ok"] [:br] + "Some text: " [:a {:class "tb big warn"} "big warn"] [:br] + "Some text: " [:a {:class "tb huge err"} "huge err"]]] buttons [:div {:id "buttons"} [:h2 "Classic"] [:a {:class "btn"} "btn"] @@ -257,8 +256,28 @@ [:a {:class "btn std huge"} "btn std"] [:a {:class "btn std huge info"} "btn std info"] [:a {:class "btn std huge ok"} "btn std ok"]]]]] + tags [:div {:id "tags"} + [:h2 "Tags"] + [:ul + [:li "item-1" [:span.tag "tag"]] + [:li "item-2" [:span.tag.info "info"]] + [:li "item-3" [:span.tag.ok "ok"]] + [:li "item-4" [:span.tag.warn "warn"]] + [:li "item-5" [:span.tag.err "err"]] + [:li "item-6" [:span.tag.fatal "fatal"]]]] + tags-listed [:div {:id "tags-inline"} + [:h2 "Inline Tags"] + [:span.tag "tag"] + [:span.tag.hl "tag hl"] + [:span.tag.info "info"] + [:span.tag.ok "ok"] + [:span.tag.warn "warn"] + [:span.tag.err "err"] + [:span.tag.fatal "fatal"] + ] buttons-section {:title "Buttons" - :cards [text-buttons text-buttons-sizes buttons]} + :cards [tags tags-listed + text-buttons text-buttons-sizes buttons]} messages [:div {:class "row"} [:div {:class "col c6 gapless"} [:h2 "Basic Messages"] diff --git a/brut.min.css b/brut.min.css index 790d5d6..dbfd58d 100644 --- a/brut.min.css +++ b/brut.min.css @@ -1 +1 @@ -/* Copyright 2022 Yann Esposito; MIT licensed */:root{--bg:#fff;--fg:#000;--bg2:#eee;--darken:rgba(0, 0, 0, 0.1);--nl:#d9d9d9;--n0:#999;--n1:#808080;--n2:#666666;--y:#b58900;--o:#cb4b16;--r:#dc322f;--m:#d33682;--v:#6c71c4;--b:#268bd2;--c:#2aa198;--g:#859900;--accent:var(--b)}@media(prefers-color-scheme:dark){body{filter:invert(100%)hue-rotate(180deg)}img,.fill{filter:brightness(80%)invert(100%)}.msg,.btn,.b,.info,.g,.ok,.y,.warn,.r,.err,.m,.fatal,.o,.v,.c,.alert{filter:brightness(90%)invert(100%)hue-rotate(180deg)}}html{background:var(--bg);color:var(--fg)}.neutral{color:var(--n0)}.bg-neutral{background:var(--nl)}a{color:var(--fg)}p>a,li>a{color:var(--accent)}.msg,.btn{background-color:var(--bg2)}.b,.info{color:var(--bg);background-color:var(--b)}.g,.ok{color:var(--bg);background-color:var(--g)}.y,.warn{color:var(--bg);background-color:var(--y)}.r,.err{color:var(--bg);background-color:var(--r)}.m,.fatal{color:var(--bg);background-color:var(--m)}.o{color:var(--bg);background-color:var(--o)}.v{color:var(--bg);background-color:var(--v)}.c{color:var(--bg);background-color:var(--c)}html,body{font-size:12px;line-height:1.5em;min-height:100vh;margin:0;padding:0;border:0;outline:0}*{box-sizing:border-box}body,textarea,input,select{background:var(--bg);color:var(--fg);border-radius:0;font-family:Menlo,Monaco,Lucida Console,Liberation Mono,DejaVu Sans Mono,Bitstream Vera Sans Mono,Courier New,monospace,serif;font-size:1rem;margin:0}img{max-width:100%}.addon,.sm,.nav,textarea,input,select{outline:0;line-height:1rem}.container{padding:0 20px;width:100%}@media(min-width:1380px){.container{margin:auto;max-width:1270px}}pre{background:var(--bg2);padding:10px;overflow:scroll}code{background:var(--darken);border:solid 1px var(--darken);padding:1px}blockquote{margin:1rem 0;padding-left:1rem;border-left:solid 1rem var(--nl)}ul{list-style-type:square;list-style-position:outside;padding-inline-start:1.5rem}ol{padding-inline-start:2rem}ul>li::marker{font-size:1.5rem}summary:hover{cursor:pointer;background:var(--bg2)}table{font-size:1rem}.sm{font-size:.75rem;line-height:.65rem}.big{font-size:2rem;line-height:2.8rem}.huge{font-size:3rem;line-height:4.1rem}.hl{background:var(--fg);color:var(--bg);border:solid 1px;padding:1px}.doc{max-width:65ch;font-size:1.25rem;font-family:-apple-system,BlinkMacSystemFont,avenir next,avenir,segoe ui,helvetica neue,helvetica,Cantarell,Ubuntu,roboto,noto,arial,sans-serif;text-align:justify;line-height:1.5em}.doc p{text-indent:3rem}.tb,.btn{text-decoration:none;display:inline-block;text-align:center}.tb{font-weight:700;cursor:pointer;padding:2px;vertical-align:baseline}.tb:before,.tb:after{opacity:.3;display:inline-block}.tb:before{content:"❬"}.tb:after{content:"❭"}.tb:hover{text-decoration:underline}.tb:hover::before,.tb:hover::after{opacity:1}.tb:active:before{content:"❰"}.tb:active:after{content:"❱"}.btn{border:solid 2px var(--fg);font-weight:700;cursor:pointer;display:inline-block;margin:0 4px 4px 0;padding:1rem 2rem;box-shadow:4px 4px var(--nl);vertical-align:bottom}.btn:hover{box-shadow:4px 4px var(--n1)}.btn:active,.btn:focus{box-shadow:1px 1px var(--n2);position:relative;top:3px;left:3px}.btn.sm{padding:.5rem 1rem}.btn.std{width:12rem}.btn.big.std{width:20rem}.btn.huge.std{width:24rem}.col,.row{display:flex;flex-direction:row;justify-content:stretch;align-items:stretch;flex-wrap:wrap;gap:1rem}.row>*{flex:1}.col>*{flex:0}.col{flex-direction:column}.start{justify-content:flex-start;align-items:flex-start}.middle{justify-content:center;align-item:center}.gapless{gap:0}.table,.c12{width:100%;flex:12}.c11{flex:11;width:91.66%}.c10{flex:10;width:83.33%}.c9{flex:9;width:75%}.c8{flex:8;width:66.66%}.c7{flex:7;width:58.33%}.c6{flex:6;width:50%}.c5{flex:5;width:41.66%}.c4{flex:4;width:33.33%}.c3{flex:3;width:25%}.c2{flex:2;width:16.66%}.c1{flex:1;width:8.33%}@media(max-width:800px){.row>*{flex:0 1 100%;width:100%}.no-mobile{display:none}}.no-grow{flex:0}.fixed{flex-grow:0;flex-shrink:0}.card,.block{padding:1rem;border:solid 1rem}.col.card,.col.block{justify-content:flex-start;align-items:flex-start}.card{border-color:var(--nl)}.block{border-color:transparent}.central{display:flex;align-items:center;justify-content:center;background-size:cover;min-height:100vh}button~.central{min-height:calc(100vh - 50px)}.hero{padding:2rem;border:double 1rem}.fill{flex-grow:1}.push{justify-self:flex-end;margin-top:auto}h1,h2,h3,h4,h5,h6{display:block;padding:.5rem;font-size:1rem;margin:0;outline:0;color:var(--bg);margin:1rem 0;border:solid 1px var(--fg)}h1 a,h2 a,h3 a,h4 a,h5 a,h6 a{color:var(--bg)}.tight{margin:0}h1{background:var(--fg)}h2{background:var(--n2)}h2{background:var(--n1)}h3{background:var(--n0)}h4{background:var(--nl);color:var(--fg)}h5{background:var(--bg2);color:var(--fg)}h6{color:var(--fg)}.ico{font-family:Arial Unicode MS,Lucida Sans Unicode;font-style:normal}.big.ico,.huge.ico{vertical-align:middle}label>*{display:inline}form>*{display:block;margin-bottom:10px}textarea,input,select{border:2px solid;padding:8px}textarea,input[type=text]{-webkit-appearance:none;width:13em;outline:0;border:2px solid}.addon{padding:8px 12px;border-width:2px;border-style:solid none solid solid}textarea:focus,input:focus,select:focus{border-color:var(--accent)}.nav{background:var(--bg2);border-bottom:solid 1px var(--darken)}footer{background:var(--bg2);border-top:solid 1px var(--darken)}.nav{height:3rem;padding:11px 0 15px}.nav a{text-decoration:none;opacity:.7;padding-right:1em;position:relative;top:-1px}.nav a:hover{opacity:1}.nav .pagename{opacity:1;font-weight:700;font-size:22px;top:1px}.btn.btn-close{float:right;font-size:25px;margin:-4.1rem 0;display:none;border:none;box-shadow:none;background:0 0;color:var(--fg)}@media(max-width:640px){.btn.btn-close{display:block}.nav{overflow:hidden}.pagename{margin-top:-11px}.nav:active,.nav:focus{height:auto}.nav div:before{background:var(--bg2);border-bottom:11px double;border-top:3px solid;content:'';float:right;height:.25rem;position:relative;right:0;top:8px;width:2rem}.nav a{display:block;padding:.5em 0;width:50%}}.table th,.table td{padding:.5em;text-align:left}.table tbody>:nth-child(2n-1){background:var(--bg2)}.msg{border-left:5px solid var(--darken);padding:1rem} \ No newline at end of file +/* Copyright 2022 Yann Esposito; MIT licensed */:root{--bg:#fff;--fg:#000;--bg2:#eee;--darken:rgba(0, 0, 0, 0.1);--nl:#d9d9d9;--n0:#999;--n1:#808080;--n2:#666666;--y:#b58900;--o:#cb4b16;--r:#dc322f;--m:#d33682;--v:#6c71c4;--b:#268bd2;--c:#2aa198;--g:#859900;--accent:var(--b)}@media(prefers-color-scheme:dark){body{filter:invert(100%)hue-rotate(180deg)}img,.fill{filter:brightness(80%)invert(100%)}.msg,.btn,.b,.info,.g,.ok,.y,.warn,.r,.err,.m,.fatal,.o,.v,.c,.alert{filter:brightness(90%)invert(100%)hue-rotate(180deg)}}html{background:var(--bg);color:var(--fg)}.neutral{color:var(--n0)}.bg-neutral{background:var(--nl)}a{color:var(--fg)}p>a,li>a{color:var(--accent)}.msg,.btn{background-color:var(--bg2)}.b,.info{color:var(--bg);background-color:var(--b)}.g,.ok{color:var(--bg);background-color:var(--g)}.y,.warn{color:var(--bg);background-color:var(--y)}.r,.err{color:var(--bg);background-color:var(--r)}.m,.fatal{color:var(--bg);background-color:var(--m)}.o{color:var(--bg);background-color:var(--o)}.v{color:var(--bg);background-color:var(--v)}.c{color:var(--bg);background-color:var(--c)}html,body{font-size:12px;line-height:1.5em;min-height:100vh;margin:0;padding:0;border:0;outline:0}*{box-sizing:border-box}body,textarea,input,select{background:var(--bg);color:var(--fg);border-radius:0;font-family:Menlo,Monaco,Lucida Console,Liberation Mono,DejaVu Sans Mono,Bitstream Vera Sans Mono,Courier New,monospace,serif;font-size:1rem;margin:0}img{max-width:100%}.addon,.sm,.nav,textarea,input,select{outline:0;line-height:1rem}.container{padding:0 20px;width:100%}@media(min-width:1380px){.container{margin:auto;max-width:1270px}}pre{background:var(--bg2);padding:10px;overflow:scroll}code{background:var(--darken);border:solid 1px var(--darken);padding:1px}blockquote{margin:1rem 0;padding-left:1rem;border-left:solid 1rem var(--nl)}ul{list-style-type:square;list-style-position:outside;padding-inline-start:1.5rem}ol{padding-inline-start:2rem}ul>li::marker{font-size:1.5rem}summary:hover{cursor:pointer;background:var(--bg2)}table{font-size:1rem}.sm{font-size:.75rem;line-height:.65rem}.big{font-size:2rem;line-height:2.8rem}.huge{font-size:3rem;line-height:4.1rem}.hl{background:var(--fg);color:var(--bg);border:solid 1px;padding:1px}.doc{max-width:65ch;font-size:1.25rem;font-family:-apple-system,BlinkMacSystemFont,avenir next,avenir,segoe ui,helvetica neue,helvetica,Cantarell,Ubuntu,roboto,noto,arial,sans-serif;text-align:justify;line-height:1.5em}.doc p{text-indent:3rem}.tb,.btn,.tag{text-decoration:none;display:inline-block;text-align:center}.tb{font-weight:700;cursor:pointer;padding:2px;vertical-align:baseline}.tb:before,.tb:after{opacity:.3;display:inline-block}.tb:before{content:"❬"}.tb:after{content:"❭"}.tb:hover{text-decoration:underline}.tb:hover::before,.tb:hover::after{opacity:1}.tb:active:before{content:"❰"}.tb:active:after{content:"❱"}.btn{border:solid 2px var(--fg);font-weight:700;cursor:pointer;display:inline-block;margin:0 4px 4px 0;padding:1rem 2rem;box-shadow:4px 4px var(--nl);vertical-align:bottom}.btn:hover{box-shadow:4px 4px var(--n1)}.btn:active,.btn:focus{box-shadow:1px 1px var(--n2);position:relative;top:3px;left:3px}.btn.sm{padding:.5rem 1rem}.btn.std{width:12rem}.btn.big.std{width:20rem}.btn.huge.std{width:24rem}.tag{padding:2px;font-size:.875rem;border:solid 1px}.col,.row{display:flex;flex-direction:row;justify-content:stretch;align-items:stretch;flex-wrap:wrap;gap:1rem}.row>*{flex:1}.col>*{flex:0}.col{flex-direction:column}.start{justify-content:flex-start;align-items:flex-start}.middle{justify-content:center;align-item:center}.gapless{gap:0}.table,.c12{width:100%;flex:12}.c11{flex:11;width:91.66%}.c10{flex:10;width:83.33%}.c9{flex:9;width:75%}.c8{flex:8;width:66.66%}.c7{flex:7;width:58.33%}.c6{flex:6;width:50%}.c5{flex:5;width:41.66%}.c4{flex:4;width:33.33%}.c3{flex:3;width:25%}.c2{flex:2;width:16.66%}.c1{flex:1;width:8.33%}@media(max-width:800px){.row>*{flex:0 1 100%;width:100%}.no-mobile{display:none}}.no-grow{flex:0}.fixed{flex-grow:0;flex-shrink:0}.card,.block{padding:1rem;border:solid 1rem}.col.card,.col.block{justify-content:flex-start;align-items:flex-start}.card{border-color:var(--nl)}.block{border-color:transparent}.central{display:flex;align-items:center;justify-content:center;background-size:cover;min-height:100vh}button~.central{min-height:calc(100vh - 50px)}.hero{padding:2rem;border:double 1rem}.fill{flex-grow:1}.push{justify-self:flex-end;margin-top:auto}h1,h2,h3,h4,h5,h6{display:block;padding:.5rem;font-size:1rem;margin:0;outline:0;color:var(--bg);margin:1rem 0;border:solid 1px var(--fg)}h1 a,h2 a,h3 a,h4 a,h5 a,h6 a{color:var(--bg)}.tight{margin:0}h1{background:var(--fg)}h2{background:var(--n2)}h2{background:var(--n1)}h3{background:var(--n0)}h4{background:var(--nl);color:var(--fg)}h5{background:var(--bg2);color:var(--fg)}h6{color:var(--fg)}.ico{font-family:Arial Unicode MS,Lucida Sans Unicode;font-style:normal}.big.ico,.huge.ico{vertical-align:middle}label>*{display:inline}form>*{display:block;margin-bottom:10px}textarea,input,select{border:2px solid;padding:8px}textarea,input[type=text]{-webkit-appearance:none;width:13em;outline:0;border:2px solid}.addon{padding:8px 12px;border-width:2px;border-style:solid none solid solid}textarea:focus,input:focus,select:focus{border-color:var(--accent)}.nav{background:var(--bg2);border-bottom:solid 1px var(--darken)}footer{background:var(--bg2);border-top:solid 1px var(--darken)}.nav{height:3rem;padding:11px 0 15px}.nav a{text-decoration:none;opacity:.7;padding-right:1em;position:relative;top:-1px}.nav a:hover{opacity:1}.nav .pagename{opacity:1;font-weight:700;font-size:22px;top:1px}.btn.btn-close{float:right;font-size:25px;margin:-4.1rem 0;display:none;border:none;box-shadow:none;background:0 0;color:var(--fg)}@media(max-width:640px){.btn.btn-close{display:block}.nav{overflow:hidden}.pagename{margin-top:-11px}.nav:active,.nav:focus{height:auto}.nav div:before{background:var(--bg2);border-bottom:11px double;border-top:3px solid;content:'';float:right;height:.25rem;position:relative;right:0;top:8px;width:2rem}.nav a{display:block;padding:.5em 0;width:50%}}.table th,.table td{padding:.5em;text-align:left}.table tbody>:nth-child(2n-1){background:var(--bg2)}.msg{border-left:5px solid var(--darken);padding:1rem} \ No newline at end of file diff --git a/h/docs.html b/h/docs.html index 9c2515a..bc2ffb0 100644 --- a/h/docs.html +++ b/h/docs.html @@ -1012,19 +1012,34 @@ </tr> </tbody> </table> -

§ Buttons

code
-  <div id="text-buttons">
-    <h3>Classic</h3><a class="tb">tb</a><a class="tb info">tb
-    info</a><a class="tb ok">tb ok</a><a class="tb warn">tb
-    warn</a><a class="tb err">tb err</a><a class="tb fatal">tb
-    fatal</a>
+

§ Buttons

Tags

  • item-1tag
  • item-2info
  • item-3ok
  • item-4warn
  • item-5err
  • item-6fatal
code
+  <div id="tags">
+    <h2>Tags</h2>
+    <ul>
+      <li>item-1<span class="tag">tag</span></li>
+      <li>item-2<span class="tag info">info</span></li>
+      <li>item-3<span class="tag ok">ok</span></li>
+      <li>item-4<span class="tag warn">warn</span></li>
+      <li>item-5<span class="tag err">err</span></li>
+      <li>item-6<span class="tag fatal">fatal</span></li>
+    </ul>
   </div>
-

Sizes

Inside some text

Some text: InfoOKWarnERR
code
+

Inline Tags

tagtag hlinfookwarnerrfatal
code
+  <div id="tags-inline">
+    <h2>Inline Tags</h2><span class="tag">tag</span><span class="tag hl">tag hl</span><span class="tag info">info</span><span class="tag ok">ok</span><span class="tag warn">warn</span><span class="tag err">err</span><span class="tag fatal">fatal</span>
+  </div>
+
code
+  <div id="text-buttons">
+    <h3>Textual buttons</h3><a class="tb">tb</a><a class="tb info">tb info</a><a class="tb ok">tb ok</a><a class="tb warn">tb warn</a><a class="tb err">tb err</a><a class="tb fatal">tb fatal</a>
+  </div>
+

Textual Buttons Sizes

Some text: small button
Some text: normal ok
Some text: big warn
Some text: huge err
code
   <div id="text-buttons-sizes">
-    <h3>Sizes</h3>
-    <h4>Inside some text</h4>
+    <h3>Textual Buttons Sizes</h3>
     <div class="block">
-      Some text: <a class="tb sm info">Info</a><a class="tb ok">OK</a><a class="tb big warn">Warn</a><a class="tb huge err">ERR</a>
+      Some text: <a class="tb sm info">small button</a><br></br>
+      Some text: <a class="tb ok">normal ok</a><br></br>
+      Some text: <a class="tb big warn">big warn</a><br></br>
+      Some text: <a class="tb huge err">huge err</a>
     </div>
   </div>
 

Classic

btnbtn infobtn okbtn warnbtn errbtn fatal
&lt;a class=&quot;btn btn-b&quot;&gt;btn-b&lt;/a&gt;

Sizes

btn smbtn infobtn big warnbtn huge err
&lt;a class=&quot;btn sm info&quot;&gt;btn sm info&lt;/a&gt;
code
diff --git a/src/buttons.less b/src/buttons.less
index 2a260b2..46874ce 100644
--- a/src/buttons.less
+++ b/src/buttons.less
@@ -1,4 +1,4 @@
-.tb, .btn { text-decoration: none; display: inline-block; text-align: center;}
+.tb, .btn, .tag { text-decoration: none; display: inline-block; text-align: center;}
 .tb { font-weight: bold;
 	  cursor: pointer;
 	  padding: 2px;
@@ -39,3 +39,4 @@
 .btn.big.std { width: 20rem; }
 .btn.huge.std { width: 24rem; }
 
+.tag { padding: 2px; font-size: 0.875rem; border: solid 1px; }