diff --git a/src/week1/day0/css/gallery.css b/src/week1/day0/css/gallery.css new file mode 100644 index 0000000..94462e2 --- /dev/null +++ b/src/week1/day0/css/gallery.css @@ -0,0 +1,86 @@ +/* Small screens (default) */ +html { + font-size: 100%; + font-family: Verdana, Geneva, Tahoma, sans-serif; +} + +/* Medium screens (640px) */ +@media (min-width: 40rem) { + html { font-size: 112%; } +} + +/* Large screens (1024px) */ +@media (min-width: 64rem) { + html { font-size: 120%; } +} + +@media (max-width: 350px) { + .container > h1 { + font-size: 3rem; + } +} + +*, *:before, *:after { + -moz-box-sizing: border-box; + -webkit-box-sizing: border-box; + box-sizing: border-box; +} + +.container { + margin: 0 auto; + max-width: 48rem; + width: 90%; + } + +.wrapper { + display: flex; + flex-direction: row; + flex-wrap: wrap; +} + +h1 { + text-align: center; + font-weight: bolder; + font-size: 4rem; +} + +.box { + height: 15rem; + width: 15rem; + margin: 10px auto 10px auto; + border: #000000 2px solid; +} + +img { + width: 100%; + height: inherit; + padding: 5px; +} + +.title { + background-color: rgba(128, 128, 128, 0.7); + position: relative; + left:0; + top:-102.5%; + margin:0; + width: 100%; + height: 35%; + opacity: 0; + transition: all 0.6s ease-in-out; +} + +.box:hover > .title { + opacity: 1; +} + +p { + font-size: 2rem; + font-weight: bold; + color: #FFFFFF; + text-align: center; +} + +p > span { + font-size: 1rem; + font-weight: 100; +} diff --git a/src/week1/day0/css/normalize.css b/src/week1/day0/css/normalize.css new file mode 100644 index 0000000..35a663c --- /dev/null +++ b/src/week1/day0/css/normalize.css @@ -0,0 +1,342 @@ +/*! normalize.css v8.0.0 | MIT License | github.com/necolas/normalize.css */ + +/* Document + ========================================================================== */ + +/** + * 1. Correct the line height in all browsers. + * 2. Prevent adjustments of font size after orientation changes in iOS. + */ + + html { + line-height: 1.15; /* 1 */ + -webkit-text-size-adjust: 100%; /* 2 */ + } + + /* Sections + ========================================================================== */ + + /** + * Remove the margin in all browsers. + */ + + body { + margin: 0; + } + + /** + * Correct the font size and margin on `h1` elements within `section` and + * `article` contexts in Chrome, Firefox, and Safari. + */ + + h1 { + font-size: 2em; + margin: 0.67em 0; + } + + /* Grouping content + ========================================================================== */ + + /** + * 1. Add the correct box sizing in Firefox. + * 2. Show the overflow in Edge and IE. + */ + + hr { + box-sizing: content-box; /* 1 */ + height: 0; /* 1 */ + overflow: visible; /* 2 */ + } + + /** + * 1. Correct the inheritance and scaling of font size in all browsers. + * 2. Correct the odd `em` font sizing in all browsers. + */ + + pre { + font-family: monospace, monospace; /* 1 */ + font-size: 1em; /* 2 */ + } + + /* Text-level semantics + ========================================================================== */ + + /** + * Remove the gray background on active links in IE 10. + */ + + a { + background-color: transparent; + } + + /** + * 1. Remove the bottom border in Chrome 57- + * 2. Add the correct text decoration in Chrome, Edge, IE, Opera, and Safari. + */ + + abbr[title] { + border-bottom: none; /* 1 */ + text-decoration: underline; /* 2 */ + text-decoration: underline dotted; /* 2 */ + } + + /** + * Add the correct font weight in Chrome, Edge, and Safari. + */ + + b, + strong { + font-weight: bolder; + } + + /** + * 1. Correct the inheritance and scaling of font size in all browsers. + * 2. Correct the odd `em` font sizing in all browsers. + */ + + code, + kbd, + samp { + font-family: monospace, monospace; /* 1 */ + font-size: 1em; /* 2 */ + } + + /** + * Add the correct font size in all browsers. + */ + + small { + font-size: 80%; + } + + /** + * Prevent `sub` and `sup` elements from affecting the line height in + * all browsers. + */ + + sub, + sup { + font-size: 75%; + line-height: 0; + position: relative; + vertical-align: baseline; + } + + sub { + bottom: -0.25em; + } + + sup { + top: -0.5em; + } + + /* Embedded content + ========================================================================== */ + + /** + * Remove the border on images inside links in IE 10. + */ + + img { + border-style: none; + } + + /* Forms + ========================================================================== */ + + /** + * 1. Change the font styles in all browsers. + * 2. Remove the margin in Firefox and Safari. + */ + + button, + input, + optgroup, + select, + textarea { + font-family: inherit; /* 1 */ + font-size: 100%; /* 1 */ + line-height: 1.15; /* 1 */ + margin: 0; /* 2 */ + } + + /** + * Show the overflow in IE. + * 1. Show the overflow in Edge. + */ + + button, + input { /* 1 */ + overflow: visible; + } + + /** + * Remove the inheritance of text transform in Edge, Firefox, and IE. + * 1. Remove the inheritance of text transform in Firefox. + */ + + button, + select { /* 1 */ + text-transform: none; + } + + /** + * Correct the inability to style clickable types in iOS and Safari. + */ + + button, + [type="button"], + [type="reset"], + [type="submit"] { + -webkit-appearance: button; + } + + /** + * Remove the inner border and padding in Firefox. + */ + + button::-moz-focus-inner, + [type="button"]::-moz-focus-inner, + [type="reset"]::-moz-focus-inner, + [type="submit"]::-moz-focus-inner { + border-style: none; + padding: 0; + } + + /** + * Restore the focus styles unset by the previous rule. + */ + + button:-moz-focusring, + [type="button"]:-moz-focusring, + [type="reset"]:-moz-focusring, + [type="submit"]:-moz-focusring { + outline: 1px dotted ButtonText; + } + + /** + * Correct the padding in Firefox. + */ + + fieldset { + padding: 0.35em 0.75em 0.625em; + } + + /** + * 1. Correct the text wrapping in Edge and IE. + * 2. Correct the color inheritance from `fieldset` elements in IE. + * 3. Remove the padding so developers are not caught out when they zero out + * `fieldset` elements in all browsers. + */ + + legend { + box-sizing: border-box; /* 1 */ + color: inherit; /* 2 */ + display: table; /* 1 */ + max-width: 100%; /* 1 */ + padding: 0; /* 3 */ + white-space: normal; /* 1 */ + } + + /** + * Add the correct vertical alignment in Chrome, Firefox, and Opera. + */ + + progress { + vertical-align: baseline; + } + + /** + * Remove the default vertical scrollbar in IE 10+. + */ + + textarea { + overflow: auto; + } + + /** + * 1. Add the correct box sizing in IE 10. + * 2. Remove the padding in IE 10. + */ + + [type="checkbox"], + [type="radio"] { + box-sizing: border-box; /* 1 */ + padding: 0; /* 2 */ + } + + /** + * Correct the cursor style of increment and decrement buttons in Chrome. + */ + + [type="number"]::-webkit-inner-spin-button, + [type="number"]::-webkit-outer-spin-button { + height: auto; + } + + /** + * 1. Correct the odd appearance in Chrome and Safari. + * 2. Correct the outline style in Safari. + */ + + [type="search"] { + -webkit-appearance: textfield; /* 1 */ + outline-offset: -2px; /* 2 */ + } + + /** + * Remove the inner padding in Chrome and Safari on macOS. + */ + + [type="search"]::-webkit-search-decoration { + -webkit-appearance: none; + } + + /** + * 1. Correct the inability to style clickable types in iOS and Safari. + * 2. Change font properties to `inherit` in Safari. + */ + + ::-webkit-file-upload-button { + -webkit-appearance: button; /* 1 */ + font: inherit; /* 2 */ + } + + /* Interactive + ========================================================================== */ + + /* + * Add the correct display in Edge, IE 10+, and Firefox. + */ + + details { + display: block; + } + + /* + * Add the correct display in all browsers. + */ + + summary { + display: list-item; + } + + /* Misc + ========================================================================== */ + + /** + * Add the correct display in IE 10+. + */ + + template { + display: none; + } + + /** + * Add the correct display in IE 10. + */ + + [hidden] { + display: none; + } + \ No newline at end of file diff --git a/src/week1/day0/css/style.css b/src/week1/day0/css/style.css new file mode 100644 index 0000000..5d9f075 --- /dev/null +++ b/src/week1/day0/css/style.css @@ -0,0 +1,91 @@ +html { + font-family: Verdana, Geneva, Tahoma, sans-serif; + font-size: 14px; +} + +header, +nav, +section, +article, +aside, +footer { + border-radius: 15px; + margin: 5px; +} + +header { + background-color: #FF0000; + text-align: center; + height: 5em; +} + +.main { + display: flex; + height: auto; + flex-direction: row; + align-items: stretch; +} + +nav { + background-color: #008000; + width: 25%; +} + +section { + background-color: #808080; + width: 50%; +} + +section > header { + background-color: #FFC0CB; + height: 3em; +} + +section > article { + background-color: #FFE4C4; + height: 15em; +} + +section > footer { + background-color: #00FFFF; + height: 3em; +} + +aside { + background-color:#FFA500; + width: 25%; +} + +footer { + background-color: #0000FF; + text-align: center; + height: 5em; +} + +.header { + font-size: 46px; +} + +.navigation { + font-size: 12px; +} + +.sidebar { + font-size: 10px; +} + +.footer { + font-size: 10px; +} + +.content > * { + font-size: 14px; +} + +[class$="r"] { + background-color: #FF00FF; +} + +[class*="a"]:not([class$="r"]) { + background-color: #0000FF; +} \ No newline at end of file diff --git a/src/week1/day0/expenses.html b/src/week1/day0/expenses.html new file mode 100644 index 0000000..45db88f --- /dev/null +++ b/src/week1/day0/expenses.html @@ -0,0 +1,31 @@ + + + + + + Expenses Table + + +
+

Expenses Table

+ + + + + + + + + + + + + + + + + +
ExpensesCost
Expense 1$800
Expense 2$1000
Expense 3$500
+
+ + \ No newline at end of file diff --git a/src/week1/day0/gallery.html b/src/week1/day0/gallery.html new file mode 100644 index 0000000..8c93db8 --- /dev/null +++ b/src/week1/day0/gallery.html @@ -0,0 +1,63 @@ + + + + + + + + Gallery + + + + + +
+

Laptops

+
+
+ Asus Laptop Image +

+ Asus
+ www.asus.com +

+
+
+ Dell Laptop Image +

+ Dell
+ www.dell.com +

+
+
+ HP Laptop Image +

+ HP
+ www.hp.com +

+
+
+ Macbook Image +

+ Macbook
+ www.apple.com +

+
+
+ Exo Laptop Image +

+ Exo
+ www.exo.com +

+
+
+ Samsung Laptop Image +

+ Samsung
+ www.samsung.com +

+
+
+
+ + + \ No newline at end of file diff --git a/src/week1/day0/image-video-audio.html b/src/week1/day0/image-video-audio.html new file mode 100644 index 0000000..69dc9bb --- /dev/null +++ b/src/week1/day0/image-video-audio.html @@ -0,0 +1,24 @@ + + + + + + Image, Video & Audio + + +
+

Image

+ HTML5 and CSS3 Logos +

Video

+ +

Audio

+ +
+ + \ No newline at end of file diff --git a/src/week1/day0/images/asus.jpg b/src/week1/day0/images/asus.jpg new file mode 100644 index 0000000..58f7061 Binary files /dev/null and b/src/week1/day0/images/asus.jpg differ diff --git a/src/week1/day0/images/dell.jpg b/src/week1/day0/images/dell.jpg new file mode 100644 index 0000000..8470b30 Binary files /dev/null and b/src/week1/day0/images/dell.jpg differ diff --git a/src/week1/day0/images/exo.jpg b/src/week1/day0/images/exo.jpg new file mode 100644 index 0000000..4b03c8b Binary files /dev/null and b/src/week1/day0/images/exo.jpg differ diff --git a/src/week1/day0/images/globant.mp4 b/src/week1/day0/images/globant.mp4 new file mode 100644 index 0000000..2de623c Binary files /dev/null and b/src/week1/day0/images/globant.mp4 differ diff --git a/src/week1/day0/images/globant_audio.mp3 b/src/week1/day0/images/globant_audio.mp3 new file mode 100644 index 0000000..2feed1e Binary files /dev/null and b/src/week1/day0/images/globant_audio.mp3 differ diff --git a/src/week1/day0/images/hp.jpg b/src/week1/day0/images/hp.jpg new file mode 100644 index 0000000..8e925ed Binary files /dev/null and b/src/week1/day0/images/hp.jpg differ diff --git a/src/week1/day0/images/html-css.png b/src/week1/day0/images/html-css.png new file mode 100644 index 0000000..cc8a11f Binary files /dev/null and b/src/week1/day0/images/html-css.png differ diff --git a/src/week1/day0/images/macbook.jpg b/src/week1/day0/images/macbook.jpg new file mode 100644 index 0000000..3c92581 Binary files /dev/null and b/src/week1/day0/images/macbook.jpg differ diff --git a/src/week1/day0/images/samsung.jpg b/src/week1/day0/images/samsung.jpg new file mode 100644 index 0000000..e631efe Binary files /dev/null and b/src/week1/day0/images/samsung.jpg differ diff --git a/src/week1/day0/index.html b/src/week1/day0/index.html new file mode 100644 index 0000000..0a0c54a --- /dev/null +++ b/src/week1/day0/index.html @@ -0,0 +1,42 @@ + + + + + + + + Index + + + + + +
+ header +
+
+ +
+ section +
+ section - header +
+
+ section - article +
+
+ section - footer +
+
+ +
+ + + + \ No newline at end of file diff --git a/src/week1/day0/my-todo-list.html b/src/week1/day0/my-todo-list.html new file mode 100644 index 0000000..160b529 --- /dev/null +++ b/src/week1/day0/my-todo-list.html @@ -0,0 +1,19 @@ + + + + + + Todo List + + +
+

My todo List

+ +
+ + \ No newline at end of file diff --git a/src/week1/day0/sign-up-form.html b/src/week1/day0/sign-up-form.html new file mode 100644 index 0000000..b6ac2b8 --- /dev/null +++ b/src/week1/day0/sign-up-form.html @@ -0,0 +1,43 @@ + + + + + + Sign Up Form + + +
+

Sign Up

+
+ First name: + +

+ Last name: + +

+ Email: + +

+ Birthday: + +

+ Favourite Sport: + +

+ Bio:
+ +
+
+ + +
+
+ + \ No newline at end of file diff --git a/src/week1/days2-5/data-structures.js b/src/week1/days2-5/data-structures.js new file mode 100644 index 0000000..d5f1d64 --- /dev/null +++ b/src/week1/days2-5/data-structures.js @@ -0,0 +1,124 @@ +// Exercise "The sum of a range" +function range(start, end, step = start < end ? 1 : -1) { + var result = []; + + if (step > 0) { + for(var i = start; i <= end; i += step) { + result.push(i); + } + } else { + for(var j = start; j >= end; j += step) { + result.push(j); + } + } + + return result; +} + +function sum(numbers) { + var total = 0; + for (value of numbers) { + total += value; + } + return total; +} + +// Exercise "Reversing an array" + +function reverseArray(array) { + var newArray = []; + for (var i = array.length - 1; i >= 0; i--) { + newArray.push(array[i]); + } + return newArray; +} + +function reverseArrayInPlace(array) { + var middle = Math.floor(array.length / 2); + for (var i = 0; i < middle; i++) { + var rightPosition = array.length - 1 - i; + var rightValue = array[rightPosition]; + array[rightPosition] = array[i]; + array[i] = rightValue; + } + return array; +} + +// Exercise "A List" + +function arrayToList(array) { + var list = null; + for (var i = array.length - 1; i >= 0; i--) { + list = { + value: array[i], + rest: list + } + } + return list; +} + +function listToArray(list) { + var array = []; + while (list != null) { + array.push(list.value); + list = list.rest; + } + return array; +} + +function prepend(element, list) { + return { + value: element, + rest: list + } +} + +function nth(list, number) { + var position = 0; + while (list != null) { + if (number == position) { + return list.value; + } else { + list = list.rest; + position++; + } + } +} + +function nthRecursive(list, number) { + if (list != null) { + if (number == 0) { + return list.value; + } else { + return nthRecursive(list.rest, number - 1); + } + } +} + +// Exercise "Deep Comparison" + +function deepEqual(value1, value2) { + if (value1 === value2) + return true; + + var object1 = typeof value1 == "object" && value1 != null; + var object2 = typeof value2 == "object" && value2 != null; + + if (object1 && object2) { + var keys1 = Object.keys(value1); + var keys2 = Object.keys(value2); + + if (keys1.length == keys2.length) { + for (let key of keys1) { + if (!keys2.includes(key) || !deepEqual(value1[key], value2[key])){ + return false; + } + } + return true; + } else { + return false; + } + } else { + return false; + } +} \ No newline at end of file diff --git a/src/week1/days2-5/functions.js b/src/week1/days2-5/functions.js new file mode 100644 index 0000000..aa31e8b --- /dev/null +++ b/src/week1/days2-5/functions.js @@ -0,0 +1,59 @@ +// Exercise "Minimum" + +function min(value1, value2) { + var isNumber1 = typeof value1 == "number"; + var isNumber2 = typeof value2 == "number"; + + if (isNumber1 && isNumber2) { + return (value1 < value2) ? value1 : value2; + } else { + console.log("Please, enter two numbers."); + } +} + +// Exercise "Recursion" + +function isEven(number) { + var isNumber = typeof number == "number"; + + if (isNumber) { + if (number >= 0) { + if (number === 0) + return true; + else + if (number === 1) + return false; + else + return isEven(number - 2); + } else + return isEven(-number); + } else { + console.log("Please, enter a number.") + } +} + +// Exercise "Bean Counting" + +function countBs(string) { + return countChar(string, "B"); +} + +function countChar(string, char) { + var isString = typeof string == "string"; + var isChar = typeof char == "string" && char.length == 1; + + if (isString) { + if (isChar) { + let counter = 0; + for (let i = 0; i < string.length; i++) { + if (string[i] === char) + counter++; + } + return counter; + } else { + console.log("Please, enter a char.") + } + } else { + console.log("Please, enter a string.") + } +} \ No newline at end of file diff --git a/src/week1/days2-5/program-structure.js b/src/week1/days2-5/program-structure.js new file mode 100644 index 0000000..6c3641b --- /dev/null +++ b/src/week1/days2-5/program-structure.js @@ -0,0 +1,44 @@ +// Exercise "Looping a Triangle" + +function loopingTriangle() { + for (let hashtag = "#"; hashtag.length <= 7; hashtag += "#") { + console.log(hashtag); + } +} + +// Exercise "FizzBuzz" + +function fizzBuzz() { + for (let counter = 1; counter <= 100; counter++) { + if (counter % 3 == 0 && counter % 5 == 0){ + console.log("FizzBuzz"); + } else { + if (counter % 3 == 0) { + console.log("Fizz"); + } else { + if (counter % 5 == 0) { + console.log("Buzz"); + } else { + console.log(counter); + } + } + } + } +} + +// Exercise "Chessboard" + +function chessboard() { + const size = 8; + for (let x = 0; x < size; x++) { + let output = ""; + for (let y = 0; y < size; y++) { + if ((x + y) % 2 == 0) { + output += " "; + } else { + output += "#"; + } + } + console.log(output + "\n"); + } +} \ No newline at end of file