<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:dc="http://purl.org/dc/elements/1.1/">
  <channel>
    <title>Forem: Japheth Ezekiel </title>
    <description>The latest articles on Forem by Japheth Ezekiel  (@iamdejean).</description>
    <link>https://forem.com/iamdejean</link>
    <image>
      <url>https://media2.dev.to/dynamic/image/width=90,height=90,fit=cover,gravity=auto,format=auto/https:%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F97473%2Fd82f6feb-4c8f-45e5-bc8b-f27c3b1e2d35.png</url>
      <title>Forem: Japheth Ezekiel </title>
      <link>https://forem.com/iamdejean</link>
    </image>
    <atom:link rel="self" type="application/rss+xml" href="https://forem.com/feed/iamdejean"/>
    <language>en</language>
    <item>
      <title>CSS Grid vs Flexbox - What is the difference?</title>
      <dc:creator>Japheth Ezekiel </dc:creator>
      <pubDate>Thu, 22 Jul 2021 19:07:02 +0000</pubDate>
      <link>https://forem.com/iamdejean/css-grid-vs-flexbox-what-is-the-difference-19i8</link>
      <guid>https://forem.com/iamdejean/css-grid-vs-flexbox-what-is-the-difference-19i8</guid>
      <description>&lt;p&gt;The internet is made up of over 1.7 Billion web pages with different page layouts. Technology  nowadays is responsive to any screen orientation or dimension of the screen in our devices. Making page layout comes in handy with the use of Cascading Style Sheet also refers to as CSS. CSS is one of the cornerstones of the web. More like the flesh covering the bones of the body. It is easy to understand and there are lots of resources available on how to use this amazing piece of technology.&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;So how is this related to our topic? &lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;CSS is use to design layout and the appearance of those web pages but creating multi-layouts is a huddle for beginners who intend to create project with that feature. &lt;br&gt;
To solve these complications, Devs invented proper responsive layout models available natively in the browser, out of which - Flexbox, CSS Grid and Bootstrap became most popular and are widely supported across all platforms &amp;amp; browsers. &lt;br&gt;
I will try to strike the difference between CSS Grid and Flexbox fundamentals and probably  when to use which layout. &lt;br&gt;
&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fzzjv1v9ficf323wnkuqb.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fzzjv1v9ficf323wnkuqb.png" alt="Alt text of image" width="800" height="314"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;&lt;p&gt;CSS Grid: This is a two-dimensional grid-based layout system with rows and columns, making it easier to design web pages without having to use floats and positioning. Like tables, grid layout allow us to align elements into columns and rows.&lt;br&gt;
To get started you have to define a container element as a grid with &lt;code&gt;display:grid&lt;/code&gt;, set the column and row sizes with &lt;code&gt;grid-template-columns&lt;/code&gt; and &lt;code&gt;grid-template-rows&lt;/code&gt;, and then place its child elements into the grid with &lt;code&gt;grid-column&lt;/code&gt; and &lt;code&gt;grid-row&lt;/code&gt;.&lt;/p&gt;&lt;/li&gt;
&lt;li&gt;&lt;p&gt;Flexbox: The CSS Flexbox offers a one-dimensional layout. It is helpful in allocating and aligning the space among items in a container (made of grids). It works with all kinds of display devices and screen sizes.&lt;br&gt;
To get started you have to define a container element as a grid with &lt;code&gt;display: flex;&lt;/code&gt;&lt;/p&gt;&lt;/li&gt;
&lt;/ol&gt;

&lt;blockquote&gt;
&lt;p&gt;What is the line of divide between these two? &lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;a. CSS Grid Layout is of two-dimensional , that means it can handle columns and rows, not like flexbox that is basically a one-dimensional.&lt;br&gt;
b. A core distinction between CSS Grid and Flexbox is their approach — CSS Grid’s &lt;br&gt;
approach is layout-first whereas Flexbox’ approach is content-first.&lt;br&gt;
c. The Flexbox layout is best suited to application components and small-scale layouts, while the Grid layout is designed for larger-scale layouts that are not linear in design.&lt;br&gt;
d. CSS Grid deploys fractional measure units for grid fluidity and auto-keyword functionality to automatically adjust columns or rows.&lt;/p&gt;

</description>
      <category>css</category>
      <category>ui</category>
      <category>beginners</category>
    </item>
    <item>
      <title>Library VS Framework - What is the difference?</title>
      <dc:creator>Japheth Ezekiel </dc:creator>
      <pubDate>Tue, 23 Jun 2020 21:18:38 +0000</pubDate>
      <link>https://forem.com/iamdejean/library-vs-framework-what-is-the-difference-5ehi</link>
      <guid>https://forem.com/iamdejean/library-vs-framework-what-is-the-difference-5ehi</guid>
      <description>&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fi%2F6m73dldfv6ms7ya67mv5.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fi%2F6m73dldfv6ms7ya67mv5.png" alt="Alt Text" width="653" height="215"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;The key difference between a library and a framework is "Inversion of Control". When you call a method from a library, you are in control. But with a framework, the control is inverted: the framework calls you. When you using a library, you are in charge of the flow of the application. You choose when and where to call the library. When you use a framework, the framework is in charge of the flow. It provides some places for you to plug in your code, but it calls the code you plugged in as needed.&lt;/p&gt;

&lt;p&gt;Imagine trying to make a car. With a framework, you’re essentially given all the materials to make that car, and it’s up to you in what arrangement you put them in. A framework is just like a factory, it is pre-equipped with code that can help you make your product without you thinking about the small details and configurations.&lt;/p&gt;

&lt;p&gt;With a library, on the other hand, you start with essentially nothing. The library’s materials are a limited set in comparison to a framework’s materials, and you can pick/choose when you want to use them and when you want to step outside that and use third-party materials.&lt;/p&gt;

&lt;p&gt;A library is just a collection of class definitions. The reason behind is simply code reuse, i.e. get the code that has already been written by other developers. The classes and methods normally define specific operations in a domain specific area. For example, there are some libraries of mathematics which can let developer just call the function without redo the implementation of how an algorithm works.&lt;/p&gt;

&lt;p&gt;In framework, all the control flow is already there, and there's a bunch of predefined white spots that you should fill out with your code. A framework is normally more complex. It defines a skeleton where the application defines its own features to fill out the skeleton. In this way, your code will be called by the framework when appropriately. The benefit is that developers do not need to worry about if a design is good or not, but just about implementing domain specific functions.&lt;/p&gt;

&lt;p&gt;Both of them defined API, which is used for programmers to use. To put those together, we can think of a library as a certain function of an application, a framework as the skeleton of the application, and an API is connector to put those together. A typical development process normally starts with a framework, and fill out functions defined in libraries through API. &lt;/p&gt;

</description>
    </item>
    <item>
      <title>Basic CSS Animation</title>
      <dc:creator>Japheth Ezekiel </dc:creator>
      <pubDate>Tue, 21 Apr 2020 10:59:09 +0000</pubDate>
      <link>https://forem.com/iamdejean/basic-css-animation-3b86</link>
      <guid>https://forem.com/iamdejean/basic-css-animation-3b86</guid>
      <description>&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fi%2Fr848sg7e7kk7bnwvygdx.gif" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fi%2Fr848sg7e7kk7bnwvygdx.gif" alt="Alt Text" width="408" height="320"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;CSS animation is a proposed module for Cascading Style Sheets that allows designers and developers to add animations by editing the CSS code of their websites, instead of uploading GIF or flash images directly. With CSS animation, you can animate certain HTML elements without having to use processor and memory-hungry JavaScript or Flash. &lt;br&gt;
Animations consist of two components, a style describing the CSS animation and a set of keyframes that indicate the start and end states of the animation’s style, as well as possible intermediate waypoints.&lt;br&gt;
To create a CSS animation sequence, you style the element you want to animate with the animation property or its sub-properties. &lt;br&gt;
The animation properties applies an animation between styles. The animation property is a shorthand property for:&lt;br&gt;
 &lt;code&gt;animation-name&lt;/code&gt;, &lt;code&gt;animation-duration&lt;/code&gt;, &lt;code&gt;animation-timing-function&lt;/code&gt;,&lt;code&gt;animation-delay&lt;/code&gt;, &lt;code&gt;animation-iteration-count&lt;/code&gt;, &lt;code&gt;animation-direction&lt;/code&gt;,&lt;code&gt;animation-fill-mode&lt;/code&gt;, and &lt;code&gt;animation-play-state&lt;/code&gt;.&lt;br&gt;
There's relationship between animation and &lt;code&gt;@keyframes &lt;/code&gt;. Animation is a CSS property and to apply animation on the element which we create, we use &lt;code&gt;@keyframes&lt;/code&gt;.&lt;br&gt;
The &lt;code&gt;@keyframes&lt;/code&gt; at-rule specifies the animation code.&lt;br&gt;
The animation is created by gradually changing from one set of CSS styles to another.&lt;br&gt;
This lets you configure the timing, duration, and other details of how the animation sequence should progress. This does not configure the actual appearance of the animation, which is done using the &lt;code&gt;@keyframes&lt;/code&gt; at-rule as described in Defining the animation sequence using &lt;code&gt;@keyframes&lt;/code&gt;.&lt;br&gt;
The animation-name property is used to specify one or more names of animations defined by &lt;code&gt; @keyframes&lt;/code&gt; at-rules, that are to be applied to the selected element.&lt;br&gt;
A &lt;code&gt;@keyframes&lt;/code&gt; at-rule specifies the property values that are to be animated over a sequence of animation keyframes.&lt;br&gt;
You can specify either one animation name in animation-name or a list of comma-separated names. Each name belongs to a &lt;code&gt;@keyframes&lt;/code&gt; identifier. If the animation name specified using animation-name does not exist, no animation is applied.&lt;br&gt;
The &lt;code&gt;@keyframes&lt;/code&gt; rule specifies the animation code and it describes how the animated element should render at a given time during the animation sequence.&lt;br&gt;
The CSS transform property is also used to alter the original form of an element. To do this, we can scale, rotate, skew, or translate the element. This can be achieved using the 2D or 3D transform property functions. The transform CSS property specifies a handful of transformation functions that can be combined any way you wish: &lt;code&gt;scale()&lt;/code&gt;,&lt;code&gt; skew()&lt;/code&gt;,&lt;code&gt;translate()&lt;/code&gt;,&lt;code&gt;rotate()&lt;/code&gt; and &lt;code&gt;matrix()&lt;/code&gt;.&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;scale(width, height): the scale function is used to alter the size of the element. The default value is 1. Values below 1 scales element down and values above 1 scales element up. Specifying only one value means that both width and height will be proportionately scaled.&lt;/li&gt;
&lt;li&gt;skew(x, y): the skew function is used to distort an element along the horizontal axis(x-value). Or along the vertical axis(y-value), or on both axis.&lt;/li&gt;
&lt;li&gt;translate(x, y): the translate function is used to move an element along the x-axis or the y-axis. It works like a relatively positioned element.&lt;/li&gt;
&lt;li&gt;rotate(deg): the rotate function is used to rotate an element either clockwise or anti-clockwise. Element rotates clockwise between 0-360 degrees or anti-clockwise if the rotate value is negative.&lt;/li&gt;
&lt;li&gt;matrix(): the matrix function is used to combine all the 2D transform functions together.&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;CSS Animations are great for animations that are relatively simple, because of the way&lt;code&gt;@keyframes&lt;/code&gt;is structured. If you want to create a more complex animation, I will recommend you use Javascript to create your animation instead.&lt;br&gt;
That’s it! With those basic properties, the possible animations you can create are endless.&lt;/p&gt;

&lt;p&gt;Here is a resource file to get you started:&lt;/p&gt;

&lt;p&gt;&lt;a href="https://codepen.io/iamdejean/pen/abvzoXg" rel="noopener noreferrer"&gt;CodePen&lt;/a&gt;-The flying birds&lt;/p&gt;

</description>
      <category>css</category>
      <category>ui</category>
      <category>html</category>
      <category>css3</category>
    </item>
    <item>
      <title>Not Understanding the User Experience.</title>
      <dc:creator>Japheth Ezekiel </dc:creator>
      <pubDate>Thu, 20 Feb 2020 07:47:09 +0000</pubDate>
      <link>https://forem.com/iamdejean/not-understanding-the-user-experience-3eae</link>
      <guid>https://forem.com/iamdejean/not-understanding-the-user-experience-3eae</guid>
      <description>&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--226p2yHf--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://dev-to-uploads.s3.amazonaws.com/i/1twshk9c2i2kog5a04yz.jpg" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--226p2yHf--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://dev-to-uploads.s3.amazonaws.com/i/1twshk9c2i2kog5a04yz.jpg" alt="Alt Text"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;In software development, having a deep understanding of users is a priority. &lt;br&gt;
The users may have opinions about how a product should work, what they value, their abilities, and also their limitations. These opinions may differ from those of your development team. But it’s often difficult for new developers to understand what their users want, since they rarely get to interact with them directly.&lt;/p&gt;

&lt;p&gt;Sure, project management techniques like Agile/Scrum make it easier for development teams to update the software as user demands change throughout the development cycle, but it can be challenging for developers who are still learning the ropes to balance the needs of the user with the lack of access to them.&lt;/p&gt;

&lt;blockquote&gt;
&lt;p&gt;Ultimately, the people who will use your product will be the end users.&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;However, users might know what task they want the product to accomplish, but not the features. It’s your job to figure that out. As Henry Ford once famously said, “If I’d asked my customers what they wanted, they would have said a faster horse.”&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;Talk to the people who have direct access to the users: (No, not the project managers.) If you really want to know what your users expect, go to the user experience experts or designers. They are required to approach each product with a human-centered design approach and are given direct access to the people who will actually be using the end product. Their insight will give direction to your code.&lt;/li&gt;
&lt;li&gt;Test your product: If you really want to know what your users think about your product, test it. Successful companies like Apple often release beta versions of their products to see how users will react to them before they are officially launched. This helps them fix any bugs and any issues users might point out.&lt;/li&gt;
&lt;/ol&gt;

</description>
      <category>uiux</category>
      <category>ux</category>
      <category>userexperience</category>
    </item>
    <item>
      <title>Adding patterns and designs to your pages without using Scalable Vector Graphics. </title>
      <dc:creator>Japheth Ezekiel </dc:creator>
      <pubDate>Wed, 19 Feb 2020 12:11:58 +0000</pubDate>
      <link>https://forem.com/iamdejean/adding-patterns-and-designs-to-your-pages-without-using-scalable-vector-graphics-50l4</link>
      <guid>https://forem.com/iamdejean/adding-patterns-and-designs-to-your-pages-without-using-scalable-vector-graphics-50l4</guid>
      <description>&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--JNXn8qal--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://dev-to-uploads.s3.amazonaws.com/i/fodlfunbwermoymqaq4i.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--JNXn8qal--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://dev-to-uploads.s3.amazonaws.com/i/fodlfunbwermoymqaq4i.png" alt="Alt Text"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;As Front-end web developers, pixels can be both our friends and worst enemies. Making everything to look nice and sharp for anyone who uses any of the websites we work on, but we need to keep file sizes down for performance. There is pretty way to go about handling patterns and designs on web pages — &lt;code&gt;Css-doodle&lt;/code&gt;. &lt;br&gt;
CSS-doodle is a library of tools that create art using CSS. CSS-doodle is a web component, just like any other HTML tag &lt;code&gt;css-doodle&lt;/code&gt;. The component will generate a grid of divs by the CSS rules inside it. You can easily manipulate those cells using CSS to come up with a graphic pattern or an animated graph on your web pages. CSS-doodle can be use to create some awesome repeated patterns.&lt;/p&gt;

&lt;p&gt;How to use CSS-doodle:&lt;/p&gt;

&lt;p&gt;First, you need to download the latest version or include it directly from a CDN src="&lt;a href="https://unpkg.com/css-doodle@0.7.7/css-doodle.min.js%22%3E"&gt;https://unpkg.com/css-doodle@0.7.7/css-doodle.min.js"&amp;gt;&lt;/a&gt;. Alternatively, you can also install CSS-doodle from npm and import the module in JavaScript npm install css-doodle.&lt;br&gt;
Secondly, We don’t actually need to write any JavaScript, or any CSS for that matter, everything we do will take place in the HTML. In the body section of your HTML you add the syntax &lt;code&gt;css-doodle&lt;/code&gt;. This element is targeted by the library and the contents we add will determine the pattern generated which can also be wrap within a &lt;/p&gt; element. &lt;br&gt;
The syntax of &lt;code&gt;css-doodle&lt;/code&gt; is based on CSS and provided several extra utility functions and shorthand properties for:

&lt;ol&gt;
&lt;li&gt;Grid&lt;/li&gt;
&lt;li&gt;Selectors&lt;/li&gt;
&lt;li&gt;Properties&lt;/li&gt;
&lt;li&gt;Functions&lt;/li&gt;
&lt;li&gt;JS API. &lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;Using the CSS Grid layout, the number of rows and columns in the grid is defined by the grid attribute on the element, ranged from 1 to 32. It's default to be 1x1 when no value or 0 is given.&lt;br&gt;
The CSS-doodle component accepts any valid CSS rules. There are special selectors, properties and functions that that you can use to create pretty much any pattern imaginable. &lt;br&gt;
To get started with CSS Doodle head over to &lt;a href="https://css-doodle.com"&gt;https://css-doodle.com&lt;/a&gt; There you’ll find code examples and inspiring demos of things you can create with it. &lt;/p&gt;

&lt;p&gt;Have fun playing with Css-doodle.&lt;/p&gt;

</description>
      <category>css</category>
      <category>cssdoodle</category>
      <category>html</category>
    </item>
    <item>
      <title>Creating a Hamburger Menu with pure CSS</title>
      <dc:creator>Japheth Ezekiel </dc:creator>
      <pubDate>Fri, 08 Nov 2019 16:27:16 +0000</pubDate>
      <link>https://forem.com/iamdejean/creating-a-hamburger-menu-with-pure-css-47o7</link>
      <guid>https://forem.com/iamdejean/creating-a-hamburger-menu-with-pure-css-47o7</guid>
      <description>&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F2sd16gve47chexcnpv3j.jpeg" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F2sd16gve47chexcnpv3j.jpeg" alt="Alt Text" width="800" height="160"&gt;&lt;/a&gt;&lt;br&gt;
In Web Development, animating and adding interactivity on certain events creates a much better user interaction if done correctly. JavaScript is a full-fledged dynamic programming language that when applied to an HTML document, can provide that dynamic interactivity on websites. However, some interactivity can be done without the use of JavaScript. In this post, we’re going to create a "Hamburger Menu" with just HTML and CSS. &lt;br&gt;
Lets kick it off with crafting a simple HTML file.&lt;br&gt;
The page have two sections, the &lt;code&gt;menu&lt;/code&gt; and the &lt;code&gt;showcase&lt;/code&gt;. In the menu section, I created a &lt;code&gt;div&lt;/code&gt; element with a class &lt;code&gt;menu-wrap&lt;/code&gt;, in which I have an &lt;code&gt;input&lt;/code&gt; element with type &lt;code&gt;checkbox&lt;/code&gt; and class &lt;code&gt;.toggler&lt;/code&gt; which is to add specific styles to the checked state, a &lt;code&gt;div&lt;/code&gt; with a class &lt;code&gt;hamburger&lt;/code&gt;, an empty &lt;code&gt;div&lt;/code&gt; and another &lt;code&gt;div&lt;/code&gt; with class &lt;code&gt;menu&lt;/code&gt;. The last &lt;code&gt;div&lt;/code&gt; element with class &lt;code&gt;menu&lt;/code&gt; have an unordered list which is the content of the hamburger menu (Home, About, Services, and Contact).&lt;br&gt;
I have two CSS files for this project, &lt;code&gt;style.css&lt;/code&gt; and &lt;code&gt;menu.css&lt;/code&gt;.&lt;br&gt;
&lt;code&gt;Style.css&lt;/code&gt; is just basic styling on the HTML. It add styling for the content of the &lt;code&gt;header&lt;/code&gt; with classes; &lt;code&gt;.showcase&lt;/code&gt;, &lt;code&gt;.container&lt;/code&gt;, &lt;code&gt;.showcase-inner&lt;/code&gt;, and &lt;code&gt;.btn&lt;/code&gt;. There's a &lt;code&gt;:before&lt;/code&gt; pseudo element on the &lt;code&gt;.showcase&lt;/code&gt; class that gives the shade of the background-color in &lt;code&gt;.showcase&lt;/code&gt; to the image in the pseudo element.&lt;br&gt;
In my &lt;code&gt;menu.css&lt;/code&gt; I set the &lt;code&gt;menu-wrap&lt;/code&gt; to a fixed position because I want the menu to stay at the top even when scrolling the page. The class toggler have an opacity of zero so that the element &lt;code&gt;input&lt;/code&gt; with type &lt;code&gt;checkbox&lt;/code&gt; doesn't show the checkbox on the page. In creating the horizontal bars, I started with creating the middle bar i.e On the class hamburger, I used the empty &lt;code&gt;div&lt;/code&gt; element to create the middle horizontal bar. Using the same &lt;code&gt;.hamburger&lt;/code&gt; class and the empty &lt;code&gt;div&lt;/code&gt; I use the &lt;code&gt;:before&lt;/code&gt; and &lt;code&gt;:after&lt;/code&gt; pseudo selector. Top position of the &lt;code&gt;:after&lt;/code&gt; selector will be positive value of the value used before so it make the three horizontal, bars.&lt;br&gt;
The &lt;code&gt;:before&lt;/code&gt; and &lt;code&gt;:after&lt;/code&gt; pseudo selector act as the 1st and the 3rd bar respectively, and the empty &lt;code&gt;div&lt;/code&gt; acts as the 2nd bar. I’ve given all these elements ease-in-out transition so that all the transformation will be smoothly. The 1st bar and the 3rd bar transform (rotate) in 90 degrees to create an X on click.&lt;br&gt;
 Since .toggler is a checkedbox, the visibility property on the &lt;code&gt;.menu-wrap&lt;/code&gt; class and &lt;code&gt;.toggler: checked&lt;/code&gt; will be "visible" i.e the visibility from the &lt;code&gt;.menu-wrap&lt;/code&gt; and &lt;code&gt;.menu&lt;/code&gt; which was hidden initially is now visible in  &lt;code&gt;.toggler:checked&lt;/code&gt;. &lt;br&gt;
 The first &lt;code&gt;div&lt;/code&gt; in the class &lt;code&gt;menu&lt;/code&gt; will have the transform (scale) property and the second &lt;code&gt;div&lt;/code&gt; with the opacity property so that when the bars are clicked (checked), it display the menu (the unordered list). &lt;br&gt;
 You can get the files from this GitHub repo:&lt;br&gt;
 &lt;a href="https://github.com/iamdejean/Hamburger-Menu" rel="noopener noreferrer"&gt;https://github.com/iamdejean/Hamburger-Menu&lt;/a&gt;&lt;br&gt;
Thanks for the read.&lt;/p&gt;

</description>
      <category>html</category>
      <category>css</category>
      <category>css3</category>
    </item>
    <item>
      <title>What is the difference between section and div in HTML? Are they not defining sections in both cases?</title>
      <dc:creator>Japheth Ezekiel </dc:creator>
      <pubDate>Wed, 23 Oct 2019 07:28:00 +0000</pubDate>
      <link>https://forem.com/iamdejean/what-is-the-difference-between-section-and-div-in-html-are-they-not-defining-sections-in-both-cases-4oen</link>
      <guid>https://forem.com/iamdejean/what-is-the-difference-between-section-and-div-in-html-are-they-not-defining-sections-in-both-cases-4oen</guid>
      <description></description>
      <category>discuss</category>
    </item>
    <item>
      <title>Creating a "fill text with image" effect using HTML and CSS.</title>
      <dc:creator>Japheth Ezekiel </dc:creator>
      <pubDate>Thu, 12 Sep 2019 19:41:27 +0000</pubDate>
      <link>https://forem.com/iamdejean/creating-a-fill-text-with-image-effect-using-html-and-css-ekc</link>
      <guid>https://forem.com/iamdejean/creating-a-fill-text-with-image-effect-using-html-and-css-ekc</guid>
      <description>&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Flvsmbyxjdr995hy6yevd.JPG" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Flvsmbyxjdr995hy6yevd.JPG" alt="Alt Text" width="800" height="364"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Adding text on images can make your website look amazing. It is great for gaining the attention of readers. This is a popular technique and a classic effect in Adobe Photoshop/Illustrator, thanks to the power of clipping masks. It clips the image to the text, meaning that only the area of the image that sits directly above the actual text remains visible, creating the illusion that the image is inside the text. The rest of the image is now hidden from view which create a solid  Fill layer. This same effect can be make using CSS. And here's how I created it.&lt;br&gt;
First, I created an index.html file, markup have a h1 tag with an ID "title".&lt;br&gt;
 Secondly, I created a style.css file which I linked it to my index.html.  The CSS has tags, classes and id's from my index.html giving them some basic properties. &lt;br&gt;
 Since the ID &lt;code&gt;title&lt;/code&gt; is where my &lt;code&gt; h1 &lt;/code&gt; is, I add a background-clip properties to it.&lt;br&gt;
The background-clip CSS property sets whether an element's background extends underneath its border box, padding box, or content box.&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;
background-clip: text;
-webkit-background-clip: text;
-webkit-text-fill-color: transparent;

&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;If the element has no background-image or background-color, this property will only have a visual effect when the border has transparent regions or partially opaque regions (due to border-style or border-image).&lt;/p&gt;

&lt;p&gt;codepen: &lt;a href="https://codepen.io/iamdejean/pen/wvwjjer" rel="noopener noreferrer"&gt;https://codepen.io/iamdejean/pen/wvwjjer&lt;/a&gt;&lt;br&gt;
github: &lt;a href="https://github.com/iamdejean/Fill-text-with-image-using-CSS" rel="noopener noreferrer"&gt;https://github.com/iamdejean/Fill-text-with-image-using-CSS&lt;/a&gt;&lt;/p&gt;

</description>
      <category>css</category>
      <category>html</category>
    </item>
  </channel>
</rss>
