From b2d24ed315b018094b23563f570bd3693d6887c7 Mon Sep 17 00:00:00 2001 From: Alex Mueller Date: Wed, 4 Mar 2020 09:41:26 -0500 Subject: [PATCH] dom mani --- .vscode/._settings.json | Bin 0 -> 4096 bytes .vscode/settings.json | 0 README.md | 0 dom-playground-master/.gitignore | 2 + dom-playground-master/README.md | 25 ++ dom-playground-master/css/style.css | 211 +++++++++++++ dom-playground-master/css/style.orig.css | 198 ++++++++++++ dom-playground-master/images/archives.gif | Bin 0 -> 522 bytes dom-playground-master/images/menu.gif | Bin 0 -> 2517 bytes dom-playground-master/images/resources.gif | Bin 0 -> 560 bytes dom-playground-master/images/select.gif | Bin 0 -> 724 bytes dom-playground-master/images/tag.gif | Bin 0 -> 1808 bytes dom-playground-master/images/trees.jpg | Bin 0 -> 44889 bytes dom-playground-master/index.html | 271 ++++++++++++++++ dom-playground-master/index.orig.html | 293 ++++++++++++++++++ dom-playground-master/js/fix-the-page.js | 77 +++++ mocking-sponge/.gitignore | 0 mocking-sponge/README.md | 0 mocking-sponge/img/spongebob.jpg | Bin mocking-sponge/index.html | 0 mocking-sponge/js/main.js | 0 tip-calculator-master/.gitignore | 0 tip-calculator-master/README.md | 0 tip-calculator-master/css/main.css | 0 .../brooke-lark-pGM4sjt_BdQ-unsplash.jpg | Bin .../camila-melim-yHQfZ9TuZn4-unsplash.jpg | Bin .../claudia-crespo-ewOrvEa87j4-unsplash.jpg | Bin tip-calculator-master/index.html | 0 tip-calculator-master/js/script.js | 0 week-1/index.html | 0 week-3/index.html | 0 week-3/js/main.js | 0 week-4/css/style.css | 0 week-4/index.html | 0 week-4/js/main.js | 0 week-5/bean.js | 0 week-5/index.html | 0 week-5/minimum.js | 0 week-5/recursion.js | 0 week-6/index.html | 22 +- week-6/js/main.js | 34 +- week-6/js/reverse.js | 40 +-- week-6/js/sum.js | 38 +-- week-6/reverse.html | 20 +- week-6/sum.html | 20 +- 45 files changed, 1164 insertions(+), 87 deletions(-) create mode 100755 .vscode/._settings.json mode change 100644 => 100755 .vscode/settings.json mode change 100644 => 100755 README.md create mode 100755 dom-playground-master/.gitignore create mode 100755 dom-playground-master/README.md create mode 100755 dom-playground-master/css/style.css create mode 100755 dom-playground-master/css/style.orig.css create mode 100755 dom-playground-master/images/archives.gif create mode 100755 dom-playground-master/images/menu.gif create mode 100755 dom-playground-master/images/resources.gif create mode 100755 dom-playground-master/images/select.gif create mode 100755 dom-playground-master/images/tag.gif create mode 100755 dom-playground-master/images/trees.jpg create mode 100755 dom-playground-master/index.html create mode 100755 dom-playground-master/index.orig.html create mode 100755 dom-playground-master/js/fix-the-page.js mode change 100644 => 100755 mocking-sponge/.gitignore mode change 100644 => 100755 mocking-sponge/README.md mode change 100644 => 100755 mocking-sponge/img/spongebob.jpg mode change 100644 => 100755 mocking-sponge/index.html mode change 100644 => 100755 mocking-sponge/js/main.js mode change 100644 => 100755 tip-calculator-master/.gitignore mode change 100644 => 100755 tip-calculator-master/README.md mode change 100644 => 100755 tip-calculator-master/css/main.css mode change 100644 => 100755 tip-calculator-master/images/brooke-lark-pGM4sjt_BdQ-unsplash.jpg mode change 100644 => 100755 tip-calculator-master/images/camila-melim-yHQfZ9TuZn4-unsplash.jpg mode change 100644 => 100755 tip-calculator-master/images/claudia-crespo-ewOrvEa87j4-unsplash.jpg mode change 100644 => 100755 tip-calculator-master/index.html mode change 100644 => 100755 tip-calculator-master/js/script.js mode change 100644 => 100755 week-1/index.html mode change 100644 => 100755 week-3/index.html mode change 100644 => 100755 week-3/js/main.js mode change 100644 => 100755 week-4/css/style.css mode change 100644 => 100755 week-4/index.html mode change 100644 => 100755 week-4/js/main.js mode change 100644 => 100755 week-5/bean.js mode change 100644 => 100755 week-5/index.html mode change 100644 => 100755 week-5/minimum.js mode change 100644 => 100755 week-5/recursion.js mode change 100644 => 100755 week-6/index.html mode change 100644 => 100755 week-6/js/main.js mode change 100644 => 100755 week-6/js/reverse.js mode change 100644 => 100755 week-6/js/sum.js mode change 100644 => 100755 week-6/reverse.html mode change 100644 => 100755 week-6/sum.html diff --git a/.vscode/._settings.json b/.vscode/._settings.json new file mode 100755 index 0000000000000000000000000000000000000000..b9ba0b71df28b7fed22efb6e013783cac7ae073a GIT binary patch literal 4096 zcmZQz6=P>$Vqox1Ojhs@R)|o50+1L3ClDJkFz{^v(m+1nBL)UWIUt(=a103v0xDsI z=wO%uWLu(X0m{L|MU(S$^%4sTa#HmQOB0I{^GY)FQW*>kEDWtpQ%%#7EYpmvoimE^ zb5pGijSP%TT%65x4J^!@bWIG5jC3tboGf%LO&!gQ%-xKPOpMLZEE?sGhQMeDjE2By z2#kinXb6mkz-S1JhQMeDjE2By2#lN%0ChG&7!2e>GBS%5ic*X7ON)|I71HvHvK2D( rN>YK{&iuT@oSaI9oYb@ug`}Lsylh}!7^-VXQ>gxjdqsvp?*D%P>#8z( literal 0 HcmV?d00001 diff --git a/.vscode/settings.json b/.vscode/settings.json old mode 100644 new mode 100755 diff --git a/README.md b/README.md old mode 100644 new mode 100755 diff --git a/dom-playground-master/.gitignore b/dom-playground-master/.gitignore new file mode 100755 index 0000000..330c75b --- /dev/null +++ b/dom-playground-master/.gitignore @@ -0,0 +1,2 @@ +/.vscode +.DS_Store \ No newline at end of file diff --git a/dom-playground-master/README.md b/dom-playground-master/README.md new file mode 100755 index 0000000..42dc69c --- /dev/null +++ b/dom-playground-master/README.md @@ -0,0 +1,25 @@ +# DOM Playground + +## Instructions +Modify `js/fix-the-page.js` to fix the page design and layout. When complete, your page should look like the original, "[Wicked Grove](http://www.csszengarden.com/006/)" design. + +## Rules +1) You may not modify the HTML file. +2) You may not modify the CSS file. + +You can use the original HTML and CSS files for reference. + +## What You Need to Know +This assignment is designed to test your knowledge of the following JavaScript features: + +* `document.querySelector()` +* `document.createElement()` +* `element.appendChild()` +* `element.innerHTML` +* `element.style` +* `element.attribute` +* `Array.forEach()` +* The DOM +* Object Literals `{}` +* and more ...! + diff --git a/dom-playground-master/css/style.css b/dom-playground-master/css/style.css new file mode 100755 index 0000000..e2f1014 --- /dev/null +++ b/dom-playground-master/css/style.css @@ -0,0 +1,211 @@ +/* Check the original CSS file for the correct body styles */ +/* It looks like they've been deleted from here. */ +/* Remember, you cannot edit this file. Add the properties using JavaScript. */ +body {} + +p { + font: 10pt/16pt "Trebuchet MS", sans-serif; + margin-top: 0px; + text-align: justify; +} + +h3 { + font: bold normal 12pt "Trebuchet MS", sans-serif; + letter-spacing: 3px; + margin-bottom: 2px; + color: #333333; + text-align: left; +} + +a:link { + font-weight: bold; + text-decoration: none; + color: #FF6600; +} + +a:visited { + font-weight: bold; + text-decoration: none; + color: #CC0000; +} + +a:hover, +a:active { + text-decoration: underline; + color: #FF6600; +} + + +/* Here's a class that you'll need to add to the HTML */ +.page-wrapper { + background: #9cf url(../images/trees.jpg) no-repeat left top; + padding: 200px 0px 0px 0px; + margin: 0px auto; + width: 800px; + border-left: 2px dashed #fff; + border-right: 2px dashed #fff; +} + +header { + margin-bottom: 10px; +} + +/* using an image to replace text in an h1. This trick courtesy Douglas Bowman, http://www.stopdesign.com/articles/css/replace-text/ */ +header h1 { + background: transparent; + margin-top: -180px; + width: 500px; + height: 87px; + float: left; + color: #fff; + + text-indent: 100%; + white-space: nowrap; + overflow: hidden; +} + +header h2 { + background: transparent url(../images/tag.gif) no-repeat top left; + width: 300px; + margin-top: -60px; + margin-left: -190px; + height: 100px; + float: right; + + text-indent: 100%; + white-space: nowrap; + overflow: hidden; +} + + +/* Add this class to the proper element */ +.summary { + width: 130px; + float: left; + padding: 5px; + margin-right: 15px; + background: #0099FF; + +} + +.summary p { + font: bold 8pt/12pt verdana, sans-serif; + text-align: right; + color: #fff; +} + +.summary a:link { + font-weight: bold; + text-decoration: none; + color: #003; +} + +.summary a:visited { + font-weight: bold; + text-decoration: none; + color: #006; +} + +.summary a:hover, +.summary a:active { + text-decoration: underline; + color: #FF6600; +} + +.preamble, +#supporting text, +.explanation, +.participation, +.benefits, +.requirements { + padding: 0px 170px 0px 30px; +} + +footer { + text-align: center; +} + +footer a:link, +footer a:visited { + margin-right: 20px; +} + +/* This class is also missing from the HTML file. Add it! */ +.sidebar { + background: transparent url(../images/menu.gif) top left no-repeat; + position: absolute; + top: 0px; + padding: 15px; + margin-top: 200px; + margin-left: 650px; + width: 130px; +} + +.sidebar .wrapper { + font: 10px verdana, sans-serif; + padding-top: 35px; +} + +.sidebar h3.select { + background: transparent url(../images/select.gif) top left no-repeat; + width: 130px; + height: 25px; + margin-left: -8px; + + text-indent: 100%; + white-space: nowrap; + overflow: hidden; +} + +.sidebar h3.archives { + background: transparent url(../images/archives.gif) top left no-repeat; + width: 130px; + height: 25px; + margin-left: -8px; + + text-indent: 100%; + white-space: nowrap; + overflow: hidden; +} + +.sidebar h3.resources { + background: transparent url(../images/resources.gif) top left no-repeat; + width: 130px; + height: 25px; + margin-left: -8px; + + text-indent: 100%; + white-space: nowrap; + overflow: hidden; +} + +.sidebar ul { + margin: 0px; + padding: 0px; +} + +.sidebar li { + line-height: 2.5ex; + background: transparent; + display: block; + padding-top: 5px; + margin-bottom: 5px; + list-style-type: none; +} + +.sidebar li a:link { + color: #FF3300; +} + +.sidebar li a:visited { + color: #FF0000; +} + +.extra1 { + background: transparent; + position: absolute; + top: 40px; + right: 0px; + width: 148px; + height: 110px; +} \ No newline at end of file diff --git a/dom-playground-master/css/style.orig.css b/dom-playground-master/css/style.orig.css new file mode 100755 index 0000000..e52af6e --- /dev/null +++ b/dom-playground-master/css/style.orig.css @@ -0,0 +1,198 @@ +/* css Zen Garden submission 006 - 'Wicked Grove' by D. Keith Robinson, http://www.7nights.com/asterisk/ */ +/* css released under Creative Commons ShareAlike License v1.0 - http://creativecommons.org/licenses/sa/1.0/ */ +/* All associated graphics copyright 2003, D. Keith Robinson */ + + +/* IMPORTANT */ +/* This design is not a template. You may not reproduce it elsewhere without the designer's written permission. */ +/* The CSS itself may freely be used for anything you wish, but the associated graphics belong to the designer. */ +/* What you may use - .css files. What you may not use - .jpg, .gif, and .png files. */ + + +/* basic elements */ +body { + font: 10pt/14pt "Trebuchet MS", sans-serif; + color: #000033; + background: #69f; + margin: 0px; + } +p { + font: 10pt/16pt "Trebuchet MS", sans-serif; + margin-top: 0px; + text-align: justify; + } +h3 { + font: bold normal 12pt "Trebuchet MS", sans-serif; + letter-spacing: 3px; + margin-bottom: 2px; + color: #333333; + text-align: left; + } +a:link { + font-weight: bold; + text-decoration: none; + color: #FF6600; + } +a:visited { + font-weight: bold; + text-decoration: none; + color: #CC0000; + } +a:hover, a:active { + text-decoration: underline; + color: #FF6600; + } + + +/* specific divs */ +.page-wrapper { + background: #9cf url(../images/trees.jpg) no-repeat left top; + padding: 200px 0px 0px 0px; + margin: 0px auto; + width:800px; + border-left: 2px dashed #fff; + border-right: 2px dashed #fff; + } + +header { + margin-bottom: 10px; + } + +/* using an image to replace text in an h1. This trick courtesy Douglas Bowman, http://www.stopdesign.com/articles/css/replace-text/ */ +header h1 { + background: transparent; + margin-top: -180px; + width: 500px; + height: 87px; + float: left; + color:#fff; + + text-indent: 100%; + white-space: nowrap; + overflow: hidden; + } +header h2 { + background: transparent url(tag.gif) no-repeat top left; + width: 300px; + margin-top:-60px; + margin-left:-190px; + height: 100px; + float: right; + + text-indent: 100%; + white-space: nowrap; + overflow: hidden; + } + +.summary { + width: 130px; + float: left; + padding:5px; + margin-right:15px; + background:#0099FF; + + } +.summary p { + font: bold 8pt/12pt verdana, sans-serif; + text-align:right; + color:#fff; + } + +.summary a:link { + font-weight: bold; + text-decoration: none; + color: #003; + } +.summary a:visited { + font-weight: bold; + text-decoration: none; + color: #006; + } +.summary a:hover, .summary a:active { + text-decoration: underline; + color: #FF6600; + } + +.preamble, #supporting text, .explanation, .participation, .benefits, .requirements { + padding: 0px 170px 0px 30px; +} + +footer { + text-align: center; + } +footer a:link, footer a:visited { + margin-right: 20px; + } + +.sidebar { + background: transparent url(menu.gif) top left no-repeat; + position: absolute; + top: 0px; + padding: 15px; + margin-top: 200px; + margin-left: 650px; + width: 130px; + } + +.sidebar .wrapper { + font: 10px verdana, sans-serif; + padding-top:35px; + } +.sidebar h3.select { + background: transparent url(select.gif) top left no-repeat; + width: 130px; + height: 25px; + margin-left:-8px; + + text-indent: 100%; + white-space: nowrap; + overflow: hidden; + } +.sidebar h3.archives { + background: transparent url(archives.gif) top left no-repeat; + width: 130px; + height: 25px; + margin-left:-8px; + + text-indent: 100%; + white-space: nowrap; + overflow: hidden; + } +.sidebar h3.resources { + background: transparent url(resources.gif) top left no-repeat; + width: 130px; + height: 25px; + margin-left:-8px; + + text-indent: 100%; + white-space: nowrap; + overflow: hidden; + } + +.sidebar ul { + margin: 0px; + padding: 0px; + } +.sidebar li { + line-height: 2.5ex; + background: transparent; + display: block; + padding-top: 5px; + margin-bottom: 5px; + list-style-type: none; + } +.sidebar li a:link { + color: #FF3300; + } +.sidebar li a:visited { + color: #FF0000; + } + +.extra1 { + background: transparent; + position: absolute; + top: 40px; + right: 0px; + width: 148px; + height: 110px; + } \ No newline at end of file diff --git a/dom-playground-master/images/archives.gif b/dom-playground-master/images/archives.gif new file mode 100755 index 0000000000000000000000000000000000000000..f8b3abeb67fea42d80103103caaeb3a7df6e4622 GIT binary patch literal 522 zcmV+l0`>hzNk%w1VS)e{0J8u9|1&fH|NsAzlK*LG|3N|jcX$6>T>nl^|AmGBt*!so z*8iZO|H;Y!@$vuUM)j$~<` zXsWJk>%MR-&lxccpCK9r?Slix;wBIfHif_u6ku2mjm2*&Su}JL!UBtV1O%bxGfMpl z0*H$dLkKh!*}(xJ=m88xd$S-w9Bpz314{q{SagKZXIKMn0cZdV zo0~nKn+i6Y0+3Pw2%MguV3`gKaE=-TMGg*20t-bGU>CTMl7(&uM@bLI5&;ee010Te zUjPgZ64d}n2?PWR0eAs8w3RyBnZp9&1z3I-nNkW3N149>Ud|L^#IMsy1@!g;{2O2i zR+@1V4(Q-j(@3z)ivp3((SeNdxd&01NuJ0CsfnAb~t;qD*CT5P%dy0C^Z7 zAVO*#!3!5Dv`Go4!>)y?~ Mx9{J;Uq%1`I}^Umng9R* literal 0 HcmV?d00001 diff --git a/dom-playground-master/images/menu.gif b/dom-playground-master/images/menu.gif new file mode 100755 index 0000000000000000000000000000000000000000..cfba7ef651db82ce6d23a1270ad8ee83761b0488 GIT binary patch literal 2517 zcmV;`2`ctSNk%w1VPpXG0p@=InauypGc(y}Xz|I((MLzZ$pw4K55%QiQf%KgShO{$o=pt$9#n!Ki_&9Z@;xov^DY=63HeZf;+wRn%a zW_O#%`L=b7rlrfVgrB6U(z1h{p|#+f#r2`H-JQSfz*b?!Nl~bu!^l8Iqp#V;M^2%$ z-l(3zzguakoWHBUD)oWkRg4S((iLA^8LW004ggEC2ui z0Av940RRX8fPaF6goTEOh>41ejE#>0-^$yg#*d1r^ME>1EILjiU!RB z)z{*h1G$&Y1>@?7ui=BC1dj%!?(6E>1BC^n>5j?$_Uw71M@U-$U5@r43>fg+pmN|y zJ%Y%Pp@C5S_N5C|4-v(R0Y5g&HxiX9U-|xM1j&%&pOPhaHEVV7Wq_0{*Zs3e@+P5u z+*BHjXKz4(j^b7(%O@&aOhMU1;Z!Gzz*KcB6_yK7C>c0U1++07MF1(WlJf`vMa2r3 zv#|&N0|1;z>FObuHbu=v*7m^KfKpvCN_Ai+O;-o(eq1)n?xCH4ZwgLyvemC&qXZa2 zS5PXWeP!V)L=?8FU!+E_{uQ*3pQ34dsm47TE~+cXp6X_L=ozYM(^r}41zVuFSx#gx zTKzNdcC-S8dmX-oaTlw6!bK5^8nm_LiIYGnz6_VlAhArdI5ywBam+f8lXK5X0=>@9 zLdRLO&paO;w9-2>-L%s;CJl9$QcoRT)mA@3bk>V(&9%8-BZqa^^OBw4*k&K%b=n4_ z%{C!xza2N*bEjRm*>{tjci4M>-8a{NXC1iJgHK&J)Q3BrIMa(O-T2Xu7ah6KlLK9O z&zI|*`OTZt+_}u3zZ`nYqpMu{$)}T?ddRDL+`7iER~$RUvoBnG!MF39yS%%X+k3XZ z0~=!>of>E4$97hv;(2-M2I^Q>du6`L!s|f2s{=F&xOR(p4woDJQ>c= zhKAr?&1l#>9zG9;uJYmZfY>%77SV{y6Jqy}m_#P(aAiu|p%bGB#VJ}5iBFsv7OAL3 zBWBTMTfCwdxd_HFijjz4v_~3;Mn*NZk&R~r;u>WWM;y)(X?3*W9dY(XI)?F&W&|V} z`-n$D%8`(K%%cqVcnwBAEs&5Lq$0KFNIxO6k(Yd=Bn@fDOj>gPlGv+c)Ie!HQ7$c# zha@HSOeqUi#=@0G)Y`u&gE?YUwR~9ptyPRb(zqicr zHFJE=EMGLwH_h}_bA8urUpC*j&G>b5e&4KLIPW*k{FQTm=j>lP|F_NnwsU~*EMPnj zIL`#ubAk74U_KwX&j|K&g8!^wKrcAZ3>I{Q2kl@&Ke*5kHgtp!En!4YIMEbVbcGjf zVMbrL(HJK4mL2_+0u;c+kunhqP+%ezsKCS+#DIx8$N>`@(14lN6p1K60TWrk0ww|h z2uvga379y75ioHB8?Ye&mdex>tbnOdjjB|qO4X`b^{QC^&8k)3U;(Xq^{ZeFYgjGN zRk51&tZ4P>1ul@*wz~DL5@73F=StVFN3LmU80*t*I<28B(m zTiehF#X9z^QHa80Cks{)h=8(~&FTUcklD^wb+eugZB!%R2ho}q01=45X+_HfCagBJ zU--gnJsW}$%(k<3V8d-Q+k+nL7PCo6!fz>y1SAZ1vUGsJaUTl-~VUU#qq_3G6NUT|+-yU+#s)|CrfurFPm z-~|27l?X)e?^|n70|C2r1~V{lTgNa41*eq;G;lEgTEPGY37@qEEwHdzUEl%@i`4-R z@Nif`EMl-Wp$R4a>K3+;Vy~Xz3@z4b8Ojjjtik{WHO49f7?9(u?zqQReZmufTvZNm zfXGxu00NLaRV6c7sv6M1lcRcsBTN~pQjo%xnQ8+YY;oT+Sp_N>GZwHgW*+ch%oxDHnDrp*FIS)f zWBvfHzr2PIjCl%q`1KUVYyuOEnGXpVa{`hw{pB<;d&?&{!I*;(gfWXj3}e=T4#u1T fJa9V$W3ECK#!T*VoBQ18PPe+(&F*$DHxK|j>&?_{ literal 0 HcmV?d00001 diff --git a/dom-playground-master/images/resources.gif b/dom-playground-master/images/resources.gif new file mode 100755 index 0000000000000000000000000000000000000000..3170140067d0e5308e9bf5466a4e0c59df4e0ca9 GIT binary patch literal 560 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 literal 0 HcmV?d00001 diff --git a/dom-playground-master/images/trees.jpg b/dom-playground-master/images/trees.jpg new file mode 100755 index 0000000000000000000000000000000000000000..126ac08134da1c0fda5ef68d221fc8aba37e7198 GIT binary patch literal 44889 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 l`wx>UuhS184iKRL8?Nh{|7HB&)tT + + + + + CSS Zen Garden: The Beauty of CSS Design + + + + + + + + + + + + + + + + +

+ +
+
+

CSS Zen Garden

+

The Beauty of CSS Design

+
+ +
+

A demonstration of what can be accomplished through CSS-based design. Select any style sheet from the list to + load it into this page.

+

Download the example html file and css file +

+
+ +
+

The Road to Enlightenment

+

Littering a dark and dreary road lay the past relics of browser-specific tags, incompatible DOMs, broken CSS support, and abandoned browsers.

+

We must clear the mind of the past. Web enlightenment has been achieved thanks to the tireless + efforts of folk like the W3C, WaSP, and the major browser creators.

+

The CSS Zen Garden invites you to relax and meditate on the important lessons of the masters. Begin + to see with clarity. Learn to use the time-honored techniques in new and invigorating fashion. + Become one with the web.

+
+
+ +
+
+

So What is This About?

+

There is a continuing need to show the power of CSS. The + Zen Garden aims to excite, inspire, and encourage participation. To begin, view some of the existing + designs in the list. Clicking on any one will load the style sheet into this very page. The HTML remains the same, the only thing that has changed + is the external CSS file. Yes, really.

+

CSS allows complete and total control over the style of a + hypertext document. The only way this can be illustrated in a way that gets people excited is by + demonstrating what it can truly be, once the reins are placed in the hands of those able to create + beauty from structure. Designers and coders alike have contributed to the beauty of the web; we can + always push it further.

+
+ +
+

Participation

+

Strong visual design has always been our focus. You are modifying this page, so strong CSS skills are necessary too, but the example files are + commented well enough that even CSS novices can use them + as starting points. Please see the CSS + Resource Guide for advanced tutorials and tips on working with CSS.

+

You may modify the style sheet in any way you wish, but not the HTML. This may seem daunting at first if you’ve + never worked this way before, but follow the listed links to learn more, and use the sample files as + a guide.

+

Download the sample HTML and CSS to + work on a copy locally. Once you have completed your masterpiece (and please, don’t submit + half-finished work) upload your CSS file to a web server + under your control. Send us a link to an archive of that + file and all associated assets, and if we choose to use it we will download it and place it on our + server.

+
+ +
+

Benefits

+

Why participate? For recognition, inspiration, and a resource we can all refer to showing people how + amazing CSS really can be. This site serves as equal + parts inspiration for those working on the web today, learning tool for those who will be tomorrow, + and gallery of future techniques we can all look forward to.

+
+ +
+

Requirements

+

Where possible, we would like to see mostly CSS + 1 & 2 usage. CSS 3 & + 4 should be limited to widely-supported elements only, or strong fallbacks should be + provided. The CSS Zen Garden is about functional, practical CSS and not the latest bleeding-edge tricks viewable by 2% + of the browsing public. The only real requirement we have is that your CSS validates.

+

Luckily, designing this way shows how well various browsers have implemented CSS by now. When sticking to the guidelines you should see + fairly consistent results across most modern browsers. Due to the sheer number of user agents on the + web these days — especially when you factor in mobile — pixel-perfect layouts may not be + possible across every platform. That’s okay, but do test in as many as you can. Your design + should work in at least IE9+ and the latest Chrome, Firefox, iOS and Android browsers (run by over + 90% of the population).

+

We ask that you submit original artwork. Please respect copyright laws. Please keep objectionable + material to a minimum, and try to incorporate unique and interesting visual themes to your work. + We’re well past the point of needing another garden-related design.

+

This is a learning exercise as well as a demonstration. You retain full copyright on your graphics + (with limited exceptions, see submission guidelines), but we + ask you release your CSS under a Creative Commons + license identical to the one on this site so that others may learn + from your work.

+

By Dave Shea. Bandwidth graciously donated + by mediatemple. Now available: Zen Garden, the book. +

+
+ + + +
+ + + + + +
+ + + + + + + + + + + + + \ No newline at end of file diff --git a/dom-playground-master/index.orig.html b/dom-playground-master/index.orig.html new file mode 100755 index 0000000..c1ab25e --- /dev/null +++ b/dom-playground-master/index.orig.html @@ -0,0 +1,293 @@ + + + + + + CSS Zen Garden: The Beauty of CSS Design + + + + + + + + + + + + + + + + + +
+ +
+
+

CSS Zen Garden

+

The Beauty of CSS Design

+
+ +
+

A demonstration of what can be accomplished through CSS-based design. Select any style sheet from the list to + load it into this page.

+

Download the example html file and css file +

+
+ +
+

The Road to Enlightenment

+

Littering a dark and dreary road lay the past relics of browser-specific tags, incompatible DOMs, broken CSS support, and abandoned browsers.

+

We must clear the mind of the past. Web enlightenment has been achieved thanks to the tireless + efforts of folk like the W3C, WaSP, and the major browser creators.

+

The CSS Zen Garden invites you to relax and meditate on the important lessons of the masters. Begin + to see with clarity. Learn to use the time-honored techniques in new and invigorating fashion. + Become one with the web.

+
+
+ +
+
+

So What is This About?

+

There is a continuing need to show the power of CSS. The + Zen Garden aims to excite, inspire, and encourage participation. To begin, view some of the existing + designs in the list. Clicking on any one will load the style sheet into this very page. The HTML remains the same, the only thing that has changed + is the external CSS file. Yes, really.

+

CSS allows complete and total control over the style of a + hypertext document. The only way this can be illustrated in a way that gets people excited is by + demonstrating what it can truly be, once the reins are placed in the hands of those able to create + beauty from structure. Designers and coders alike have contributed to the beauty of the web; we can + always push it further.

+
+ +
+

Participation

+

Strong visual design has always been our focus. You are modifying this page, so strong CSS skills are necessary too, but the example files are + commented well enough that even CSS novices can use them + as starting points. Please see the CSS + Resource Guide for advanced tutorials and tips on working with CSS.

+

You may modify the style sheet in any way you wish, but not the HTML. This may seem daunting at first if you’ve + never worked this way before, but follow the listed links to learn more, and use the sample files as + a guide.

+

Download the sample HTML and CSS to + work on a copy locally. Once you have completed your masterpiece (and please, don’t submit + half-finished work) upload your CSS file to a web server + under your control. Send us a link to an archive of that + file and all associated assets, and if we choose to use it we will download it and place it on our + server.

+
+ +
+

Benefits

+

Why participate? For recognition, inspiration, and a resource we can all refer to showing people how + amazing CSS really can be. This site serves as equal + parts inspiration for those working on the web today, learning tool for those who will be tomorrow, + and gallery of future techniques we can all look forward to.

+
+ +
+

Requirements

+

Where possible, we would like to see mostly CSS + 1 & 2 usage. CSS 3 & + 4 should be limited to widely-supported elements only, or strong fallbacks should be + provided. The CSS Zen Garden is about functional, practical CSS and not the latest bleeding-edge tricks viewable by 2% + of the browsing public. The only real requirement we have is that your CSS validates.

+

Luckily, designing this way shows how well various browsers have implemented CSS by now. When sticking to the guidelines you should see + fairly consistent results across most modern browsers. Due to the sheer number of user agents on the + web these days — especially when you factor in mobile — pixel-perfect layouts may not be + possible across every platform. That’s okay, but do test in as many as you can. Your design + should work in at least IE9+ and the latest Chrome, Firefox, iOS and Android browsers (run by over + 90% of the population).

+

We ask that you submit original artwork. Please respect copyright laws. Please keep objectionable + material to a minimum, and try to incorporate unique and interesting visual themes to your work. + We’re well past the point of needing another garden-related design.

+

This is a learning exercise as well as a demonstration. You retain full copyright on your graphics + (with limited exceptions, see submission guidelines), but we + ask you release your CSS under a Creative Commons + license identical to the one on this site so that others may learn + from your work.

+

By Dave Shea. Bandwidth graciously donated + by mediatemple. Now available: Zen Garden, the book. +

+
+ + + +
+ + + + + +
+ + + + + + + + + + + + \ No newline at end of file diff --git a/dom-playground-master/js/fix-the-page.js b/dom-playground-master/js/fix-the-page.js new file mode 100755 index 0000000..0e94672 --- /dev/null +++ b/dom-playground-master/js/fix-the-page.js @@ -0,0 +1,77 @@ +/** + * Use this javascript file to fix the page design and layout. + * + * Rules: + * 1) You may not modify the HTML file. + * 2) You may not modify the CSS file. + * + * You can begin by adding the classes mentioned in style.css to + * their appropriate elements in the HTML file. + */ + + + + + + + + + + + + +/** + * Here's the bad news: The resource links are missing from our HTML file. + * The good news: They're here in our JS file as an array of objects. + * + * 1) Use this array of objects to create new tags and append them to a new
  • . + * 2) Then take your new
  • and append it to ul#resourceList + */ +let resources = [ + { + title: "View the source CSS file of the currently-viewed design.", + href: "css/style.css", + innerHTML: "View This Design’s CSS" + }, + { + title: "Links to great sites with information on using CSS.", + href: "http://www.mezzoblue.com/zengarden/resources/", + innerHTML: "CSS Resources " + }, + { + title: "A list of Frequently Asked Questions about the Zen Garden.", + href: "http://www.mezzoblue.com/zengarden/faq/", + innerHTML: "FAQ " + }, + { + title: "Send in your own CSS file.", + href: "http://www.mezzoblue.com/zengarden/submit/", + innerHTML: "Submit a Design" + }, + { + title: "View translated versions of this page.", + href: "http://www.mezzoblue.com/zengarden/translations/", + innerHTML: "Translations" + }, +]; +let resourceList = document.querySelector('ul#resourceList') + +resources.forEach(resource => { + let listItem = document.createElement('li'); + let anchor = document.createElement('a'); + anchor.title = resource.title; + anchor.innerHTML = resource.innerHTML; + anchor.href = resource.href; + listItem.appendChild(anchor); + resourceList.appendChild(listItem); +}); + +let pageWrapper = document.querySelector('body>div') +pageWrapper.className = 'page-wrapper' + +let zenSummary = document.getElementById('zen-summary') +zenSummary.className = 'summary' + +let sidebar = document.querySelector("aside[role='complementary']") +sidebar.className = 'sidebar' + diff --git a/mocking-sponge/.gitignore b/mocking-sponge/.gitignore old mode 100644 new mode 100755 diff --git a/mocking-sponge/README.md b/mocking-sponge/README.md old mode 100644 new mode 100755 diff --git a/mocking-sponge/img/spongebob.jpg b/mocking-sponge/img/spongebob.jpg old mode 100644 new mode 100755 diff --git a/mocking-sponge/index.html b/mocking-sponge/index.html old mode 100644 new mode 100755 diff --git a/mocking-sponge/js/main.js b/mocking-sponge/js/main.js old mode 100644 new mode 100755 diff --git a/tip-calculator-master/.gitignore b/tip-calculator-master/.gitignore old mode 100644 new mode 100755 diff --git a/tip-calculator-master/README.md b/tip-calculator-master/README.md old mode 100644 new mode 100755 diff --git a/tip-calculator-master/css/main.css b/tip-calculator-master/css/main.css old mode 100644 new mode 100755 diff --git a/tip-calculator-master/images/brooke-lark-pGM4sjt_BdQ-unsplash.jpg b/tip-calculator-master/images/brooke-lark-pGM4sjt_BdQ-unsplash.jpg old mode 100644 new mode 100755 diff --git a/tip-calculator-master/images/camila-melim-yHQfZ9TuZn4-unsplash.jpg b/tip-calculator-master/images/camila-melim-yHQfZ9TuZn4-unsplash.jpg old mode 100644 new mode 100755 diff --git a/tip-calculator-master/images/claudia-crespo-ewOrvEa87j4-unsplash.jpg b/tip-calculator-master/images/claudia-crespo-ewOrvEa87j4-unsplash.jpg old mode 100644 new mode 100755 diff --git a/tip-calculator-master/index.html b/tip-calculator-master/index.html old mode 100644 new mode 100755 diff --git a/tip-calculator-master/js/script.js b/tip-calculator-master/js/script.js old mode 100644 new mode 100755 diff --git a/week-1/index.html b/week-1/index.html old mode 100644 new mode 100755 diff --git a/week-3/index.html b/week-3/index.html old mode 100644 new mode 100755 diff --git a/week-3/js/main.js b/week-3/js/main.js old mode 100644 new mode 100755 diff --git a/week-4/css/style.css b/week-4/css/style.css old mode 100644 new mode 100755 diff --git a/week-4/index.html b/week-4/index.html old mode 100644 new mode 100755 diff --git a/week-4/js/main.js b/week-4/js/main.js old mode 100644 new mode 100755 diff --git a/week-5/bean.js b/week-5/bean.js old mode 100644 new mode 100755 diff --git a/week-5/index.html b/week-5/index.html old mode 100644 new mode 100755 diff --git a/week-5/minimum.js b/week-5/minimum.js old mode 100644 new mode 100755 diff --git a/week-5/recursion.js b/week-5/recursion.js old mode 100644 new mode 100755 diff --git a/week-6/index.html b/week-6/index.html old mode 100644 new mode 100755 index cc3e0c9..0249f41 --- a/week-6/index.html +++ b/week-6/index.html @@ -1,12 +1,12 @@ - - - - - - MDN Object Tutoral - - -

    look in the console thanks

    - - + + + + + + MDN Object Tutoral + + +

    look in the console thanks

    + + \ No newline at end of file diff --git a/week-6/js/main.js b/week-6/js/main.js old mode 100644 new mode 100755 index a84f8ce..28930e7 --- a/week-6/js/main.js +++ b/week-6/js/main.js @@ -1,17 +1,17 @@ -function Person(first, last, age, gender, interests) { - this.name = { - first : first, - last : last - }; - this.age = age; - this.gender = gender; - this.interests = interests; - this.bio = function() { - alert(this.name.first + ' ' + this.name.last + ' is ' + this.age + ' years old. He likes ' + this.interests[0] + ' and ' + this.interests[1] + '.'); - }; - this.greeting = function() { - alert('Hi! I\'m ' + this.name.first + '.'); - }; -} - -let person1 = new Person('Bob', 'Smith', 32, 'male', ['music', 'skiing']); +function Person(first, last, age, gender, interests) { + this.name = { + first : first, + last : last + }; + this.age = age; + this.gender = gender; + this.interests = interests; + this.bio = function() { + alert(this.name.first + ' ' + this.name.last + ' is ' + this.age + ' years old. He likes ' + this.interests[0] + ' and ' + this.interests[1] + '.'); + }; + this.greeting = function() { + alert('Hi! I\'m ' + this.name.first + '.'); + }; +} + +let person1 = new Person('Bob', 'Smith', 32, 'male', ['music', 'skiing']); diff --git a/week-6/js/reverse.js b/week-6/js/reverse.js old mode 100644 new mode 100755 index 2c0696f..83104b1 --- a/week-6/js/reverse.js +++ b/week-6/js/reverse.js @@ -1,21 +1,21 @@ -function reverseArray(array) { - let arrayNew = [] - for (let index = array.length- 1; index >=0 ; index--) { - const element = array[index]; - arrayNew.push(element); - } - return arrayNew -} - -function reverseArrayInPlace(array) { - let lastIndex = array.length - 1 - for (let index = 0; index < (lastIndex / 2); index++) { - const element = array[index]; - array[index] = array[lastIndex-index] - array[lastIndex-index] = element; - } -} -console.log(reverseArray(["A", "B", "C"])); -let arrayValue = [1, 2, 3, 4, 5]; -reverseArrayInPlace(arrayValue); +function reverseArray(array) { + let arrayNew = [] + for (let index = array.length- 1; index >=0 ; index--) { + const element = array[index]; + arrayNew.push(element); + } + return arrayNew +} + +function reverseArrayInPlace(array) { + let lastIndex = array.length - 1 + for (let index = 0; index < (lastIndex / 2); index++) { + const element = array[index]; + array[index] = array[lastIndex-index] + array[lastIndex-index] = element; + } +} +console.log(reverseArray(["A", "B", "C"])); +let arrayValue = [1, 2, 3, 4, 5]; +reverseArrayInPlace(arrayValue); console.log(arrayValue); \ No newline at end of file diff --git a/week-6/js/sum.js b/week-6/js/sum.js old mode 100644 new mode 100755 index 91d5e6d..5a90075 --- a/week-6/js/sum.js +++ b/week-6/js/sum.js @@ -1,20 +1,20 @@ -function range(start, end, step) { - let arr = [] - if (step > 0){ - for (let index = start; index <= end; index += step) { - arr.push(index) - } - } else if (step < 0) - for (let index = start; index >= end; index += step) { - arr.push(index) - } else return "Err" - return arr -} - -function sum(array) { - let sum = 0; - array.forEach(item => { - sum += item - }); - return sum +function range(start, end, step) { + let arr = [] + if (step > 0){ + for (let index = start; index <= end; index += step) { + arr.push(index) + } + } else if (step < 0) + for (let index = start; index >= end; index += step) { + arr.push(index) + } else return "Err" + return arr +} + +function sum(array) { + let sum = 0; + array.forEach(item => { + sum += item + }); + return sum } \ No newline at end of file diff --git a/week-6/reverse.html b/week-6/reverse.html old mode 100644 new mode 100755 index 5db4cb1..9cef66a --- a/week-6/reverse.html +++ b/week-6/reverse.html @@ -1,11 +1,11 @@ - - - - - - Reversing an array - - - - + + + + + + Reversing an array + + + + \ No newline at end of file diff --git a/week-6/sum.html b/week-6/sum.html old mode 100644 new mode 100755 index a2b7824..c5883a6 --- a/week-6/sum.html +++ b/week-6/sum.html @@ -1,11 +1,11 @@ - - - - - - Sum of a Range - - - - + + + + + + Sum of a Range + + + + \ No newline at end of file