Herodotus CSS. Combining the Best of Modern Methodology. Presentational Documentation
|
|
- Valentine Norman
- 5 years ago
- Views:
Transcription
1 Herodotus CSS Presentational Documentation Combining the Best of Modern Methodology When I first started out in web development in 011, I learned it the old way. I learned about keeping my HTML neat and tidy, naming my classes semantically and using specificity in CSS. But the web changed, becoming more complex as time went on and exposing the faults in our best practices. People like Nicole Sullivan, Nicolas Gallagher, Brad Frost, Jeremy Clarke and Jonathan Snook saw how web was starting to demand a different approach and developed new methodologies. In 013, I started using Nicole Sullivan's OOCSS after reading about it in a chapter of The Smashing Book 4. I experienced an immediate jump in my efficiency when I started using this method. The principles of modularity and abstraction that it offered made my code infinitely more maintainable and even my speed in initial development went up. However over time, I started to become aware of some problems in the methodology. One thing led to another, and with my Master's Thesis drawing near, I decided to create an improved methodology. I started out by analyzing CSS' history and modern CSS methodologies - OOCSS, SUIT CSS, Atomic Design, DRY CSS and SMACSS. At the beginning, I planned on simply improving OOCSS - but once my research was done, this approach changed. Almost every methodology I had found had its benefits and drawbacks - so I decided to combine their knowledge and my own realizations into one comprehensive methodology. This is what Herodotus CSS is. Herodotus is known as the Father of History, as he was the first scholar who researched and combined knowledge from an array of sources. I discovered that this was exactly my approach to not start from scratch but instead fuse brilliant ideas together. 1
2 The Architecture The Architecture Different developers have different workflows. Herodotus CSS introduces an architecture that is meant to be flexible for any developer. It starts with base styles. Base styles are the foundation of your website. Here, the standard styles Derived from of every HTML Tag are written using element selectors. Base styles also include reset styles. The basis you create here already takes away a bunch of work you would have to do later on and puts it in a easy-to-find box. h3 { font-size: 10%; } a { color: #fff; text-decoration: none; &:hover, &:focus, &:active { color: #fff; text-decoration: underline; } } The rest of the architecture deals with the tangible parts of a design, starting with layout styles. Layout styles make up the structure of your website, most likely providing a grid layout system. It does not refer to any type of content. Derived from
3 Components Components Now let's dive a little deeper into this layout. What we will find is all kinds of content. This content, no matter what kind, is treated in the concept of modularity, as in most other CSS methodologies. However, in Herodotus CSS, Module architecture is split in three. Derived from Headline in a Background Read more On the highest level, we have components. These are units of content that serve a clear purpose to the user, whether they are news blocks, carousels, navbars, or simply an image with text next to it. All elements that they contain are defined as subparts of that component and receive their own classes and rules. If you have small variations of a component, feel free to create modifier classes that extend the original component classes. Components can be nested into each other endlessly. This allows you to define broader and broader units of meaning while still preserving the reusability of smaller components. Just be sure to detect smaller ones and create them first before moving on to the bigger picture. Atoms Herodotus CSS goes further than this though. The various visual pieces that make up a component, as well as being subparts, also receive their own clear classification. As far as pieces are visually separate from each other, they are seen as atoms. Derived from Atomic Design Read more This abstraction gives us very reusable, yet overseeable and tangible elements that hook into components, which in turn bend them to fit their needs. However, in order for this to work, they have to follow a couple of rules. 3
4 Atoms 1 Atoms have to be condensed. Similar Atoms of one type (e.g. links, buttons or list items) should be distinct from one another in order to prevent too much redundancy. Atoms themselves are contextless. They have to be able to hook into any Component, so when you're styling an atom, think of how it would look on its own. It doesn't hurt to look at the rest of the design at this point and spot similar atoms in different places. Condense what you find and apply. The styles that are left are what the specific Component needs to make the atom work! Add that to the component subpart styles. 3 The last two points lead up to this one, and it might be hard to grasp at first. Don't worry though, my brain hurt while thinking about it too: Distinct Atoms do not come in variations of their own. That means that modifier classes are dumped for Atoms. Why, you may ask? It seems essential. Well, the whole point of Herodotus CSS is to provide clarity - and Component Subparts are already in charge of Atom modification. If Atoms also had that task, you would have no way of knowing which path to choose when a green link has to be a bit bigger somewhere else. Giving the task to component subparts preserves the independence of Atoms. You might have to repeat a line of code to make that link bigger a couple of times, but you also definitely know where to find that code. 4
5 Utilities Utilities Now all that's missing is the glue that holds everything together. Utilities, unlike layout styles, do not set up a structure, but define a module's spacial relation towards its siblings and parent. They define one single CSS declaration each, making them infinitely reusable. However, in Herodotus CSS, they are tightly controlled, preventing them from overflowing your elements and CSS files. Utility classes are assigned an array of properties that differ the most depending on an element's location. These properties are almost exclusive to utilities. Here's the list: margin padding width height float text-align Derived from Remember when I said almost exclusive? Well, in some cases, you may require pixel perfect measurements, i.e. ugly numbers such as "34px". If that is the case, the value is not generally repeatable. Instead, it's most likely that you wrote it for one specific case. So don't hesitate to write those types of declarations into the component they apply to. Also, some of these properties are necessarily shared with your layout styles. Let's Talk about Names. Before we get into how all of this fits together in practice, we have to talk about naming. Herodotus CSS' naming system is not heavy on rules and most of what you'll see here is a recommendation. Different developers are used to different naming systems, so being too strict would be counter-productive. What you see below uses a BEM (Block Element--Modifier) naming flavor that was developed by Nicolas Gallagher. Derived from <Prefix>- <Mobile Prefix>- <Block> <Element> --<Modifier>.is-<State> 5
6 Let s Talk about Names. <Prefix>- This part is used to clarify whether a module class refers to a component, an atom or a utility. Components receive the prefix c-, atoms receive the prefix at- and utilities receive the prefix u-. <Mobile Prefix>- Any class can be made responsive by adding a mobile prefix. These are usually abbreviations for various screen sizes such as xs-, sm- or md-. <Block> The block segment is a module's main name. Components are named after their functionality, atoms after their element type and utilities after the role that they fulfill. <Element> Child elements of components are named using this segment. --<Modifier> Modifiers have various purposes. In components, they express variations and small class extensions. In utilities and atoms, modifiers are simply used to specify their nature and differentiate elements of the same type..is-<state> States contain CSS declarations for behaviors that are modified either during runtime or page generation. In CSS, they are treated like pseudo-classes and receive their own classes. These are then added to whatever class the state applies to, just like :hover or :active. 6
7 Let s Talk about Names. Now, just combine these building blocks in any way you need them to construct your classes. What you'll get might look something like this: A Navbar Component.c-navbar Navbar Links.c-navbar link Navbar Listitems.c-navbar listitem Link Atoms.at-link--primary.at-link--secondary.at-link--type1.at-link--type Spacer Utilities.u-spacer--small--downward.u-spacer--large--upward.u-spacer--medium--right.u-spacer--smaller--left But again, the way I personally construct my names in detail does not necessarily have to be yours. If you like using CamelCase, go for it. If you'd rather have the spacer utilities be named margin at the block level, be my guest. The only thing that is important is that you are consistent and that the prefixes and overall BEM structure are preserved. Also, keep in mind that classes with mobile prefixes are meant to be added to the base class. If you want responsive rules to always apply to a class, just write them directly into it. With that being said, I did spend time analyzing naming possibilities. What I came up with is a list of name recommendations sorted by priority. It can serve as sort of a guideline if you have trouble naming something. If you're stuck on one type of name, move on to the next in the priority list. 7
8 Let s Talk about Names. General Segments <Prefix>- <Mobile Prefix>-.is-<State> c- atu- Notes xs- sm- md- lg-.is-active.is-collapsed All of the names presented here are examples. For prefixes, you can pretty much use any abbreviation you feel comfortable with. States can be named after the visual or functional state that the element finds itself in. Components Name Segment Expression Priority List Examples Notes <Block> 1 Functionality navbar carousel I didn't find any case where I couldn't name a component after its functionality. <Element> 1 Functionality send Purpose for the Developer container 3 Element Type link --<Modifier> 1 Functionality --peripheral Appearance --detailed 3 Numerical --primary 8
9 Let s Talk about Names. Atoms Name Segment Expression Priority List Examples Notes <Block> 1 Element Type link listitem Since atoms on their own are contextless, you shouldn't name them after any sort of functionality. --<Modifier> 1 Appearance Numerical --unstyled --primary You can add more modifiers to further specify the atom. Utilities Name Segment Expression Priority List Examples Notes <Block> 1 Functionality Modified CSS Property spacer float --<Modifier> 1 Appearance Numerical --small --primary You can add more modifiers to further specify the utility. 9
10 Putting It All Together Putting It All Together Now that we have the architecture set up, let's look at how this works in practice. We'll start with the simple example component we set up before and express it in HTML with the applied classes. Headline in a Background Read more <div class="c-infobox"> <h3 class="c-infobox headline u-island--smaller"> Headline </h3> <p> Content </p> <a class="at-button--primary u-float--right"> Read more </a> </div> As you can see, I've mixed and matched component, atom and utility classes in HTML to achieve my goal. However, I don't need to use everything everywhere. The <h3>-tag doesn't need an atom class because this type of headline can be found in the base styles. It is my default h3. Conceptually, it is still an atom, though. The <a>-tag on the other hand doesn't have to include a component subpart class because the component doesn't need to change the atom. The <p>-tag is left completely alone because the base styles are all it needs in this case. Utilities are sprinkled in when necessary to take over the properties that are assigned to them. So the classes in use already convey a large amount of information to the developer, but aren't too many in number. You can expand on the clarity, though. For instance, I like to head off components with their base class - in the above case, that would be c-infobox. While I don't need any special styles here, it tells me where the component begins. Don't overuse this method though, as a lack of classes can also convey information, for example that an element did not need special component styling etc. So what is visually a component or an atom doesn't necessarily need to be explicitly declared as such within your HTML. Concerning layout styles, I should mention that they can absolutely be used within your larger elements. A good rule of thumb is that layout styles are applied to containers, e.g. as in grid classes, while utilities are applied directly to components, component subparts and atoms. 10
11 File Separation File Separation So by setting up this architecture, we've formally separated five concepts from each other - base, layout, component, atom and utility styles. Now we're going to transfer this logic to our file structure. We want our CSS files to be short and easy to overview, but also easy to find. We'll begin by creating folders for each category and put components, atoms and utilities in a parent folder named Modules. Let's take it one step further. Sure, now our categories are nicely divided, but we also have multiple types of components, atoms and utilities. In the block segment of their names, that type is defined. So instead of having one long file for components, one for atoms and one for utilities, we will give each type its own file and name it after that type. We should get something like this: Derived from This makes our various elements very easy to find and keeps the individual files short. The flipside of this is that you have to create a new file every time you create a new element type. However, this small amount of extra work pales in comparison to the the time you would otherwise have to spend looking for something. This is also where preprocessors like SASS and LESS jump in. All of these files couldn't possibly be separate CSS files, the load times would go through the roof and Google would hate you. Instead, let the preprocessor of your choice combine the files into one for you. 11
12 The Framework Question At this point, I should mention that while I really would recommend this approach, it s not set in stone. If you prefer to have less files and separate your code in a different way that you find more comfortable, you are entirely free to to do so. The important thing is that you keep a structure that you can navigate through easily. The Framework Question Frameworks are useful. There's no denying that. They take away a bunch of legwork from the development process. However, you'll never need every single part of a large framework like Bootstrap. Also, Herodotus CSS naturally isn't applied in any of them. In the end, Herodotus CSS recommends the following: 1 If your framework comes in preprocessor files, use them. Then, separate module files from layout or base files and put them into their own folders. This may take some time, but afterwards, you'll never have to do it again. Now, take the files that you don't use and place them into a folder clearly marked as containing unused styles. I recommend that you remove all files that have anything to do with modules. This will guarantee a lean and overseeable foundation of layout and base styles to start from. 3 If there are any module files that you want to keep, place them into a separate folder inside the Modules folder. This way, you can find framework-specific styles more easily. Some frameworks also come with files dedicated to providing essential variables or a library of mixins. Try to use these conservatively so that you don't have to constantly cross-check them. 1
13 Special Cases Special Cases Icon Fonts On first sight, icons don't really fit the bill when it comes to components or atoms. In CSS, they're implemented by using the :before or :after pseudo-classes, which aren't real HTML tags that we can apply classes to. To make matters worse, the type of icon is also controlled via CSS, which is highly variable. At the same time, there is usually a set of rules that determines the icon font family, among other things, which is highly static. All in all, there are two cases of icon use, and each can be solved. 1 Home News Galleries An atom is associated with various different icons throughout the site, each of which shows a very specific function. Read more An atom is mostly associated with one single icon throughout the site. The icon itself is abstract and applicable in any situation. These two cases mirror exactly what components and atoms are in charge of, respectively. Atoms are meant for general use, so they re ideally condensed into something a little bit more abstract. Components are in charge of the situational specifics. This sounds like a perfect fit. However, the static icon code creates an interesting dilemma. If we wrote this code into atoms and components, we d be repeating ourselves a lot. In my case, the static icon code looks like this: font-family: 'icomoon'; speak: none; font-style: normal; font-weight: normal; font-variant: normal; text-transform: none; line-height: 1; /* Better Font Rendering =========== */ -webkit-font-smoothing: antialiased; -moz-osx-font-smoothing: grayscale; So yeah, it's pretty long. However, it s still better to repeat it than to put it into a separate and reusable class. This type of extreme abstractification is limited in Herodotus CSS on purpose. In HTML, your class attributes shouldn t be too verbose and you should be able to quickly tell what classes you need. Icons are visually and conceptually bound 13
14 Special Cases to tangible elements, which is why their code, both static and variable, should be found there. It s simply more natural. Something you can do to save time is stick the static code into a mixin, depending on the preprocessor you use. To summarize, if an icon within an element changes depending on its context, write all of the icon code into a component subpart class. If the icon stays the same, no matter where the element is placed, write the code into an atom class. Forced Complexity There is a certain case when it comes to atoms where the coding doesn't work out as planned. It's not a particularly rare case either. This occurs when a design element is visually an atom, but needs multiple HTML elements to construct. If this happens, what you've got is a small component, not an atom. Build the element like you would any other component. The only special thing you need to do is name it appropriately. What I recommend here is to name it after the element type and append --complex to distinguish it from its atomic siblings. The result would be something along the lines of c-button--complex--primary. However, if you can, use one HTML element only. Small components should be the exception, not common practice. Exceptions to Utility Properties Running text has quite a special place in CSS heart. What I am speaking of goes outside the realm of components and into simpler terms - because if we strip away all of the complexity in design that we have today, we are left with writing. Headlines, paragraphs and lists. Even browsers, by default, automatically add margins and paddings to these elements, because they have to fit the flow of text. For these elements, it would be unnatural to disallow utility properties to be written into their base styles. This doesn t break the rules of Herodotus CSS - running text is simply different from visual elements. Psuedo-elements are the second exception. This was something I discovered after already having built the Herodotus CSS website and begrudgingly redacted. If you were to add utility classes that set the margins, padding, etc. of :before and :after elements, you would start seeing an insane amount of verbosity in you class attributes. It wouldn t make sense to do this, 14
15 In the End either. Icons, for example, were already declared to be natural parts of their respective atoms or components, so why would the icons margins not be? So instead, put the required utility properties where you defined the pseudo-element s content. So altogether, there are three cases where utility properties are not exclusive to utility classes: Pixel Perfect Measurements Elements for Running Text Pseudo-Elements In the End I created Herodotus CSS to make web development faster, more flexible and more clear - to minimize tedious tasks and let you, the developer, concentrate on the engineering challenges. Currently however, the only person who has used it is me. So please feel free to use it in your project and share it with the community. If you feel that it can be improved upon or that I left something out, please share your thoughts and suggestions with me - I plan to develop Herodotus CSS for a long time. My Contact Information Patrick Santy Mail: mail@herodotuscss.com Mobile:
PROFESSOR: Last time, we took a look at an explicit control evaluator for Lisp, and that bridged the gap between
MITOCW Lecture 10A [MUSIC PLAYING] PROFESSOR: Last time, we took a look at an explicit control evaluator for Lisp, and that bridged the gap between all these high-level languages like Lisp and the query
More informationCSS worksheet. JMC 105 Drake University
CSS worksheet JMC 105 Drake University 1. Download the css-site.zip file from the class blog and expand the files. You ll notice that you have an images folder with three images inside and an index.html
More informationTUTORIAL MADCAP FLARE Tripane and PDF
TUTORIAL MADCAP FLARE 2018 Tripane and PDF Copyright 2018 MadCap Software. All rights reserved. Information in this document is subject to change without notice. The software described in this document
More informationThe Stack, Free Store, and Global Namespace
Pointers This tutorial is my attempt at clarifying pointers for anyone still confused about them. Pointers are notoriously hard to grasp, so I thought I'd take a shot at explaining them. The more information
More informationScalable and Modular Architecture for CSS. A flexible guide to developing sites small and large. by Jonathan Snook
} Scalable and Modular Architecture for CSS A flexible guide to developing sites small and large. by Jonathan Snook Copyright 2012 Jonathan Snook All Rights Reserved SMACSS: Scalable and Modular Architecture
More informationORB Education Quality Teaching Resources
These basic resources aim to keep things simple and avoid HTML and CSS completely, whilst helping familiarise students with what can be a daunting interface. The final websites will not demonstrate best
More informationMITOCW watch?v=kz7jjltq9r4
MITOCW watch?v=kz7jjltq9r4 PROFESSOR: We're going to look at the most fundamental of all mathematical data types, namely sets, and let's begin with the definitions. So informally, a set is a collection
More informationMicrosoft Expression Web Quickstart Guide
Microsoft Expression Web Quickstart Guide MS-Expression Web Quickstart Guide Page 1 of 24 Expression Web Quickstart Guide (20-Minute Training) Welcome to Expression Web. When you first launch the program,
More information6.001 Notes: Section 8.1
6.001 Notes: Section 8.1 Slide 8.1.1 In this lecture we are going to introduce a new data type, specifically to deal with symbols. This may sound a bit odd, but if you step back, you may realize that everything
More informationIntro. Classes & Inheritance
Intro Functions are useful, but they're not always intuitive. Today we're going to learn about a different way of programming, where instead of functions we will deal primarily with objects. This school
More informationUsing Dreamweaver CC. Logo. 4 Creating a Template. Page Heading. Page content in this area. About Us Gallery Ordering Contact Us Links
Using Dreamweaver CC 4 Creating a Template Now that the main page of our website is complete, we need to create the rest of the pages. Each of them will have a layout that follows the plan shown below.
More informationP1_L3 Operating Systems Security Page 1
P1_L3 Operating Systems Security Page 1 that is done by the operating system. systems. The operating system plays a really critical role in protecting resources in a computer system. Resources such as
More informationHTML and CSS a further introduction
HTML and CSS a further introduction By now you should be familiar with HTML and CSS and what they are, HTML dictates the structure of a page, CSS dictates how it looks. This tutorial will teach you a few
More informationFrontend guide. Everything you need to know about HTML, CSS, JavaScript and DOM. Dejan V Čančarević
Frontend guide Everything you need to know about HTML, CSS, JavaScript and DOM Dejan V Čančarević Today frontend is treated as a separate part of Web development and therefore frontend developer jobs are
More informationArduino IDE Friday, 26 October 2018
Arduino IDE Friday, 26 October 2018 12:38 PM Looking Under The Hood Of The Arduino IDE FIND THE ARDUINO IDE DOWNLOAD First, jump on the internet with your favorite browser, and navigate to www.arduino.cc.
More informationIn our first lecture on sets and set theory, we introduced a bunch of new symbols and terminology.
Guide to and Hi everybody! In our first lecture on sets and set theory, we introduced a bunch of new symbols and terminology. This guide focuses on two of those symbols: and. These symbols represent concepts
More informationUsing Dreamweaver CS6
Using Dreamweaver CS6 4 Creating a Template Now that the main page of our website is complete, we need to create the rest of the pages. Each of them will have a layout that follows the plan shown below.
More informationIntroduction to Multimedia. MMP100 Spring 2016 thiserichagan.com/mmp100
Introduction to Multimedia MMP100 Spring 2016 profehagan@gmail.com thiserichagan.com/mmp100 Troubleshooting Check your tags! Do you have a start AND end tags? Does everything match? Check your syntax!
More informationMITOCW watch?v=flgjisf3l78
MITOCW watch?v=flgjisf3l78 The following content is provided under a Creative Commons license. Your support will help MIT OpenCourseWare continue to offer high-quality educational resources for free. To
More informationMITOCW ocw apr k
MITOCW ocw-6.033-32123-06apr2005-220k Good afternoon. So we're going to continue our discussion about atomicity and how to achieve atomicity. And today the focus is going to be on implementing this idea
More informationIntroduction. Using Styles. Word 2010 Styles and Themes. To Select a Style: Page 1
Word 2010 Styles and Themes Introduction Page 1 Styles and themes are powerful tools in Word that can help you easily create professional looking documents. A style is a predefined combination of font
More informationMITOCW watch?v=se4p7ivcune
MITOCW watch?v=se4p7ivcune The following content is provided under a Creative Commons license. Your support will help MIT OpenCourseWare continue to offer high quality educational resources for free. To
More informationMITOCW watch?v=hverxup4cfg
MITOCW watch?v=hverxup4cfg PROFESSOR: We've briefly looked at graph isomorphism in the context of digraphs. And it comes up in even more fundamental way really for simple graphs where the definition is
More informationGetting Started with Eric Meyer's CSS Sculptor 1.0
Getting Started with Eric Meyer's CSS Sculptor 1.0 Eric Meyer s CSS Sculptor is a flexible, powerful tool for generating highly customized Web standards based CSS layouts. With CSS Sculptor, you can quickly
More informationMake a Website. A complex guide to building a website through continuing the fundamentals of HTML & CSS. Created by Michael Parekh 1
Make a Website A complex guide to building a website through continuing the fundamentals of HTML & CSS. Created by Michael Parekh 1 Overview Course outcome: You'll build four simple websites using web
More information6.001 Notes: Section 15.1
6.001 Notes: Section 15.1 Slide 15.1.1 Our goal over the next few lectures is to build an interpreter, which in a very basic sense is the ultimate in programming, since doing so will allow us to define
More informationCOMSC-031 Web Site Development- Part 2
COMSC-031 Web Site Development- Part 2 Part-Time Instructor: Joenil Mistal December 5, 2013 Chapter 13 13 Designing a Web Site with CSS In addition to creating styles for text, you can use CSS to create
More informationWelcome Please sit on alternating rows. powered by lucid & no.dots.nl/student
Welcome Please sit on alternating rows powered by lucid & no.dots.nl/student HTML && CSS Workshop Day Day two, November January 276 powered by lucid & no.dots.nl/student About the Workshop Day two: CSS
More informationCOMM 2555: Interactive Digital Communication / Spring 2018 Lab 9: Basic layout techniques with CSS
COMM 2555: Interactive Digital Communication / Spring 2018 Lab 9: Basic layout techniques with CSS Goals Practice working with the CSS box model, positioning and layout Step 1. Create your infrastructure
More informationClient Side JavaScript and AJAX
Client Side JavaScript and AJAX Client side javascript is JavaScript that runs in the browsers of people using your site. So far all the JavaScript code we've written runs on our node.js server. This is
More informationCreating your first website Part 4: Formatting your page with CSS
Adobe - Developer Center : Creating your first website Part 4: Formatting your page... Page 1 of 23 Dreamweaver Article Creating your first website Part 4: Formatting your page with CSS Jon Varese Adobe
More informationUSER GUIDE. MADCAP FLARE 2017 r3. QR Codes
USER GUIDE MADCAP FLARE 2017 r3 QR Codes Copyright 2018 MadCap Software. All rights reserved. Information in this document is subject to change without notice. The software described in this document is
More informationAzon Master Class. By Ryan Stevenson Guidebook #7 Site Construction 2/2
Azon Master Class By Ryan Stevenson https://ryanstevensonplugins.com/ Guidebook #7 Site Construction 2/2 Table of Contents 1. Creation of Additional Site Pages & Content 2. Custom HTML Menus for Category
More informationMITOCW watch?v=0jljzrnhwoi
MITOCW watch?v=0jljzrnhwoi The following content is provided under a Creative Commons license. Your support will help MIT OpenCourseWare continue to offer high quality educational resources for free. To
More informationStyles, Style Sheets, the Box Model and Liquid Layout
Styles, Style Sheets, the Box Model and Liquid Layout This session will guide you through examples of how styles and Cascading Style Sheets (CSS) may be used in your Web pages to simplify maintenance of
More informationAzon Master Class. By Ryan Stevenson Guidebook #8 Site Construction 1/3
Azon Master Class By Ryan Stevenson https://ryanstevensonplugins.com/ Guidebook #8 Site Construction 1/3 Table of Contents 1. Code Generators 2. Home Page Menu Creation 3. Category Page Menu Creation 4.
More informationDirect Variations DIRECT AND INVERSE VARIATIONS 19. Name
DIRECT AND INVERSE VARIATIONS 19 Direct Variations Name Of the many relationships that two variables can have, one category is called a direct variation. Use the description and example of direct variation
More informationSmart formatting for better compatibility between OpenOffice.org and Microsoft Office
Smart formatting for better compatibility between OpenOffice.org and Microsoft Office I'm going to talk about the backbreaking labor of helping someone move and a seemingly unrelated topic, OpenOffice.org
More informationPost Experiment Interview Questions
Post Experiment Interview Questions Questions about the Maximum Problem 1. What is this problem statement asking? 2. What is meant by positive integers? 3. What does it mean by the user entering valid
More informationHow to Improve Your Campaign Conversion Rates
How to Improve Your Email Campaign Conversion Rates Chris Williams Author of 7 Figure Business Models How to Exponentially Increase Conversion Rates I'm going to teach you my system for optimizing an email
More information4. Write sets of directions for how to check for direct variation. How to check for direct variation by analyzing the graph :
Name Direct Variations There are many relationships that two variables can have. One of these relationships is called a direct variation. Use the description and example of direct variation to help you
More informationIntroduction to JavaScript and the Web
Introduction to JavaScript and the Web In this introductory chapter, we'll take a look at what JavaScript is, what it can do for you, and what you need to be able to use it. With these foundations in place,
More informationSkill 1: Multiplying Polynomials
CS103 Spring 2018 Mathematical Prerequisites Although CS103 is primarily a math class, this course does not require any higher math as a prerequisite. The most advanced level of mathematics you'll need
More informationMITOCW MIT6_172_F10_lec18_300k-mp4
MITOCW MIT6_172_F10_lec18_300k-mp4 The following content is provided under a Creative Commons license. Your support will help MIT OpenCourseWare continue to offer high quality educational resources for
More informationGraduating to Grid. An Event Apart Orlando
Graduating to Grid An Event Apart Orlando 2018 And there was great rejoicing. https://wpdev.uservoice.com/forums/257854-microsoft-edge-developer/suggestions/6514853-update-css-grid https://caniuse.com/#search=grid
More informationAn attribute used in HTML that is used for web browsers screen reading devices to indicate the presence and description of an image Module 4
HTML Basics Key Terms Term Definition Introduced In A tag used in HTML that stands for Anchor and is used for all types of hyperlinks Module 3 A tag used in HTML to indicate a single line break
More informationIf Statements, For Loops, Functions
Fundamentals of Programming If Statements, For Loops, Functions Table of Contents Hello World Types of Variables Integers and Floats String Boolean Relational Operators Lists Conditionals If and Else Statements
More informationWebsite Development with HTML5, CSS and Bootstrap
Contact Us 978.250.4983 Website Development with HTML5, CSS and Bootstrap Duration: 28 hours Prerequisites: Basic personal computer skills and basic Internet knowledge. Course Description: This hands on
More informationCPSC 320 Sample Solution, Playing with Graphs!
CPSC 320 Sample Solution, Playing with Graphs! September 23, 2017 Today we practice reasoning about graphs by playing with two new terms. These terms/concepts are useful in themselves but not tremendously
More informationAzon Master Class. By Ryan Stevenson Guidebook #7 Site Construction 2/3
Azon Master Class By Ryan Stevenson https://ryanstevensonplugins.com/ Guidebook #7 Site Construction 2/3 Table of Contents 1. Creation of Site Pages 2. Category Pages Creation 3. Home Page Creation Creation
More informationManaging CSS Projects with ITCSS. DaFED Novi Sad, November 2014
Hello, Serbia! Managing CSS Projects with ITCSS DaFED Novi Sad, November 2014 #itcss Harry Roberts Consultant Front-end Architect. Products, long-running projects, large teams, big codebases. @csswizardry
More information(Refer Slide Time: 02.06)
Data Structures and Algorithms Dr. Naveen Garg Department of Computer Science and Engineering Indian Institute of Technology, Delhi Lecture 27 Depth First Search (DFS) Today we are going to be talking
More informationRuby on Rails Welcome. Using the exercise files
Ruby on Rails Welcome Welcome to Ruby on Rails Essential Training. In this course, we're going to learn the popular open source web development framework. We will walk through each part of the framework,
More informationWeb Design and Implementation
Study Guide 3 - HTML and CSS - Chap. 13-15 Name: Alexia Bernardo Due: Start of class - first day of week 5 Your HTML files must be zipped and handed in to the Study Guide 3 dropbox. Chapter 13 - Boxes
More informationChrome if I want to. What that should do, is have my specifications run against four different instances of Chrome, in parallel.
Hi. I'm Prateek Baheti. I'm a developer at ThoughtWorks. I'm currently the tech lead on Mingle, which is a project management tool that ThoughtWorks builds. I work in Balor, which is where India's best
More informationThe building block of a CSS stylesheet. A rule consists of a selector and a declaration block (one or more declarations).
WDI Fundamentals Unit 4 CSS Cheat Sheet Rule The building block of a CSS stylesheet. A rule consists of a selector and a declaration block (one or more declarations). Declaration A declaration is made
More informationMITOCW ocw f99-lec07_300k
MITOCW ocw-18.06-f99-lec07_300k OK, here's linear algebra lecture seven. I've been talking about vector spaces and specially the null space of a matrix and the column space of a matrix. What's in those
More informationCSS means Cascading Style Sheets. It is used to style HTML documents.
CSS CSS means Cascading Style Sheets. It is used to style HTML documents. Like we mentioned in the HTML tutorial, CSS can be embedded in the HTML document but it's better, easier and neater if you style
More informationBEGINNER PHP Table of Contents
Table of Contents 4 5 6 7 8 9 0 Introduction Getting Setup Your first PHP webpage Working with text Talking to the user Comparison & If statements If & Else Cleaning up the game Remembering values Finishing
More informationHTML5: Adding Style. Styling Differences. HTML5: Adding Style Nancy Gill
HTML5: Adding Style In part 2 of a look at HTML5, Nancy will show you how to add CSS to the previously unstyled document from part 1 and why there are some differences you need to watch out for. In this
More informationHeader. Article. Footer
Styling your Interface There have been various versions of HTML since its first inception. HTML 5 being the latest has benefited from being able to look back on these previous versions and make some very
More informationLesson 1 using Dreamweaver CS3. To get started on your web page select the link below and copy (Save Picture As) the images to your image folder.
Lesson 1 using Dreamweaver CS3 To get started on your web page select the link below and copy (Save Picture As) the images to your image folder. Click here to get images for your web page project. (Note:
More informationWordPress is free and open source, meaning it's developed by the people who use it.
1 2 WordPress Workshop by BBC July 2015 Contents: lorem ipsum dolor sit amet. page + WordPress.com is a cloudhosted service that runs WordPress where you can set up your own free blog or website without
More informationFormal Methods of Software Design, Eric Hehner, segment 24 page 1 out of 5
Formal Methods of Software Design, Eric Hehner, segment 24 page 1 out of 5 [talking head] This lecture we study theory design and implementation. Programmers have two roles to play here. In one role, they
More informationAzon Master Class. By Ryan Stevenson Guidebook #5 WordPress Usage
Azon Master Class By Ryan Stevenson https://ryanstevensonplugins.com/ Guidebook #5 WordPress Usage Table of Contents 1. Widget Setup & Usage 2. WordPress Menu System 3. Categories, Posts & Tags 4. WordPress
More informationWelcome Back! Without further delay, let s get started! First Things First. If you haven t done it already, download Turbo Lister from ebay.
Welcome Back! Now that we ve covered the basics on how to use templates and how to customise them, it s time to learn some more advanced techniques that will help you create outstanding ebay listings!
More informationFormal Methods of Software Design, Eric Hehner, segment 1 page 1 out of 5
Formal Methods of Software Design, Eric Hehner, segment 1 page 1 out of 5 [talking head] Formal Methods of Software Engineering means the use of mathematics as an aid to writing programs. Before we can
More informationHow to lay out a web page with CSS
How to lay out a web page with CSS A CSS page layout uses the Cascading Style Sheets format, rather than traditional HTML tables or frames, to organize the content on a web page. The basic building block
More informationCSS. Selectors & Measurments. Copyright DevelopIntelligence LLC
CSS Selectors & Measurments 1 Back to descendants remember walking down the document tree structure and see how parents and children interact not only is it important to know about inheritance walking
More informationIntroduction to CSS. 2 Sep 13. Derek Peacock. An introduction to defining CSS style rules using tags, classes and ids.
An introduction to defining CSS style rules using tags, classes and ids. 1 The HTML file contains the raw content of a web page, and the css style sheet should control all the design and look of a web
More informationClass 3 Page 1. Using DW tools to learn CSS. Intro to Web Design using Dreamweaver (VBUS 010) Instructor: Robert Lee
Class 3 Page 1 Using DW tools to learn CSS Dreaweaver provides a way for beginners to learn CSS. Here s how: After a page is set up, you might want to style the . Like setting up font-family, or
More informationCS193X: Web Programming Fundamentals
CS193X: Web Programming Fundamentals Spring 2017 Victoria Kirst (vrk@stanford.edu) Today's schedule Today: - Wrap up box model - Debugging with Chrome Inspector - Case study: Squarespace Layout - Flex
More informationDocumentation Nick Parlante, 1996.Free for non-commerical use.
Documentation Nick Parlante, 1996.Free for non-commerical use. A program expresses an algorithm to the computer. A program is clear or "readable" if it also does a good job of communicating the algorithm
More informationCaseComplete Roadmap
CaseComplete Roadmap Copyright 2004-2014 Serlio Software Development Corporation Contents Get started... 1 Create a project... 1 Set the vision and scope... 1 Brainstorm for primary actors and their goals...
More informationprintf( Please enter another number: ); scanf( %d, &num2);
CIT 593 Intro to Computer Systems Lecture #13 (11/1/12) Now that we've looked at how an assembly language program runs on a computer, we're ready to move up a level and start working with more powerful
More informationThe following content is provided under a Creative Commons license. Your support
MITOCW Lecture 10 The following content is provided under a Creative Commons license. Your support will help MIT OpenCourseWare continue to offer high-quality educational resources for free. To make a
More informationZen Garden. CSS Zen Garden
CSS Patrick Behr CSS HTML = content CSS = display It s important to keep them separated Less code in your HTML Easy maintenance Allows for different mediums Desktop Mobile Print Braille Zen Garden CSS
More informationDigital Marketing Manager, Marketing Manager, Agency Owner. Bachelors in Marketing, Advertising, Communications, or equivalent experience
Persona name Amanda Industry, geographic or other segments B2B Roles Digital Marketing Manager, Marketing Manager, Agency Owner Reports to VP Marketing or Agency Owner Education Bachelors in Marketing,
More informationCS103 Spring 2018 Mathematical Vocabulary
CS103 Spring 2018 Mathematical Vocabulary You keep using that word. I do not think it means what you think it means. - Inigo Montoya, from The Princess Bride Consider the humble while loop in most programming
More informationWeek - 01 Lecture - 04 Downloading and installing Python
Programming, Data Structures and Algorithms in Python Prof. Madhavan Mukund Department of Computer Science and Engineering Indian Institute of Technology, Madras Week - 01 Lecture - 04 Downloading and
More informationImagery International website manual
Imagery International website manual Prepared for: Imagery International Prepared by: Jenn de la Fuente Rosebud Designs http://www.jrosebud.com/designs designs@jrosebud.com 916.538.2133 A brief introduction
More informationCS193X: Web Programming Fundamentals
CS193X: Web Programming Fundamentals Spring 2017 Victoria Kirst (vrk@stanford.edu) Today's schedule Schedule: - HTML: Background and history - Complex selectors - Box model - Debugging with Chrome Inspector
More informationInstructor: Craig Duckett. Lecture 04: Thursday, April 5, Relationships
Instructor: Craig Duckett Lecture 04: Thursday, April 5, 2018 Relationships 1 Assignment 1 is due NEXT LECTURE 5, Tuesday, April 10 th in StudentTracker by MIDNIGHT MID-TERM EXAM is LECTURE 10, Tuesday,
More informationBefore you begin, make sure you have the images for these exercises saved in the location where you intend to create the Nuklear Family Website.
9 Now it s time to challenge the serious web developers among you. In this section we will create a website that will bring together skills learned in all of the previous exercises. In many sections, rather
More informationPROFESSOR: So far in this course we've been talking a lot about data abstraction. And remember the idea is that
MITOCW Lecture 4B [MUSIC-- "JESU, JOY OF MAN'S DESIRING" BY JOHANN SEBASTIAN BACH] PROFESSOR: So far in this course we've been talking a lot about data abstraction. And remember the idea is that we build
More informationDRY CSS A DON T-REPEAT-YOURSELF METHODOLOGY FOR CREATING EFFICIENT, UNIFIED AND SCALABLE STYLESHEETS
DRY CSS A DON T-REPEAT-YOURSELF METHODOLOGY FOR CREATING EFFICIENT, UNIFIED AND SCALABLE STYLESHEETS Jeremy Clarke http://jeremyclarke.org Download these slides: http://slideshare.net/jeremyclarke WHO
More informationCSS BASICS. selector { property: value; }
GETTING STARTED 1. Download the Juice-o-Rama 11-01 zip file from our course dropbox. 2. Move the file to the desktop. You have learned two ways to do this. 3. Unzip the file by double clicking it. You
More informationWhat's New. Version 9.2 release. Campground Master Contents 1. Contents. A couple quick reminders:
Campground Master Contents 1 Contents A couple quick reminders: Make Backups! It's so sad when we hear from someone whose computer has crashed and they have no backup of their data to restore from. It's
More informationHi everyone. I hope everyone had a good Fourth of July. Today we're going to be covering graph search. Now, whenever we bring up graph algorithms, we
Hi everyone. I hope everyone had a good Fourth of July. Today we're going to be covering graph search. Now, whenever we bring up graph algorithms, we have to talk about the way in which we represent the
More informationThere are four (4) skills every Drupal editor needs to master:
There are four (4) skills every Drupal editor needs to master: 1. Create a New Page / Edit an existing page. This entails adding text and formatting the content properly. 2. Adding an image to a page.
More informationCascading Style Sheets for layout II CS7026
Cascading Style Sheets for layout II CS7026 Understanding CSS float The CSS float property is also a very important property for layout. It allows you to position your Web page designs exactly as you want
More informationCopyright. For more information, please read the Disclosures and Disclaimers section at the end of this ebook. First PDF Edition, February 2013
Copyright This ebook is Copyright 2013 Teresa Miller (the Author ). All Rights Reserved. Published in the United States of America. The legal notices, disclosures, and disclaimers in the front and back
More informationOddsMatrix. Everything is possible. SASS Code Standards
OddsMatrix Everything is possible. SASS Code Standards Why do we need SASS standards? Switching projects (when we need to, when we want to) Maximizing efficiency (finding stuff fast) Fast bug-fixing Fast
More informationSASS Variables and Mixins Written by Margaret Rodgers. Variables. Contents. From Web Team. 1 Variables
SASS Variables and Mixins Written by Margaret Rodgers From Web Team Contents 1 Variables o 1.1 Nested Variables 2 Mixins 3 Inheritance Variables A variable in SASS works exactly the same as a variable
More information(Refer Slide Time: 1:43)
(Refer Slide Time: 1:43) Digital Circuits and Systems Prof. S. Srinivasan Department of Electrical Engineering Indian Institute of Technology, Madras Lecture - 27 Pattern Detector So, we talked about Moore
More informationUsing Dreamweaver CC. 6 Styles in Websites. Exercise 1 Linked Styles vs Embedded Styles
Using Dreamweaver CC 6 So far we have used CSS to arrange the elements on our web page. We have also used CSS for some limited formatting. In this section we will take full advantage of using CSS to format
More informationMITOCW MIT6_01SC_rec2_300k.mp4
MITOCW MIT6_01SC_rec2_300k.mp4 KENDRA PUGH: Hi. I'd like to talk to you today about inheritance as a fundamental concept in object oriented programming, its use in Python, and also tips and tricks for
More information(Refer Slide Time: 00:01:30)
Digital Circuits and Systems Prof. S. Srinivasan Department of Electrical Engineering Indian Institute of Technology, Madras Lecture - 32 Design using Programmable Logic Devices (Refer Slide Time: 00:01:30)
More informationSearch Box Usability Testing Report November 5, 2007
Search Box Usability Testing Report November 5, 2007 Charge: To gather user feedback on two different styles of search boxes for the new library website. The Web Re-Design Group is looking to assess the
More informationWeb-Friendly Sites. Planning & Design 1
Planning & Design 1 This tutorial presents useful tips and tricks to help you achieve a more Web-friendly design and make your sites more efficient. The following topics are discussed: How Z-order and
More information