Free Website Templates for Online Stores

Original Source: http://feedproxy.google.com/~r/1stwebdesigner/~3/PRRA83WoGqk/

Online CMSes like WordPress, Shopify, and Joomla have popularized the use of templates and themes. With them, you can choose a look for your website and configure it without any knowledge of coding.

But did you know that you can also find HTML and Bootstrap templates that can be used on any website? What’s more, many of these templates are free. If you’re looking to start an online store and need a base to work off of, try one of these free eCommerce templates.

UNLIMITED DOWNLOADS: Email, admin, landing page & website templates

DOWNLOAD NOW

Fashion Hub

Example of Fashion Hub

Looking to make an elegant fashion boutique? Fashion Hub has everything you’ll need in this Bootstrap template. The homepage comes with a slider, service list, Instagram hub, and plenty of links pointing to your store. There’s also plenty of product pages, a blog, and even checkout/order screens.

eShopper

Example of eShopper

 

Made for all types of eCommerce websites, eShopper is a simple and clean design that comes with 11 pages. These include product listings, checkout pages, and a blog. This one’s a great all-purpose template with plenty of functionality and pages.

Sell Anything

Example of Sell Anything

With all the pages you’ll need to start building an online store, Sell Anything allows you to do just that. There’s a clean homepage with various product sliders, plenty of other pages you’ll need, and a topology page that shows you the various elements this template uses and explains how to use them to build your own pages.

Shop

Example of Shop

If you love elegant animations, you should try this HTML5 template. There’s plenty of scrolling animations, beautiful hover effects, and more in this stylish design. You get a few pages from this one, including a product, about, and services page. This one is perfect for a small shop that sells a few products.

Boighor

Example of Boighor

Light design and beautiful animations define this eCommerce design made just for online bookstores. But with such a nice design, you might want to repurpose this for any type of shop. The free version comes with twelve pages, while the pro version gives you a few extra pages and some variations on the available ones.

Toys Shop

Example of Toys Shop

With a bright and colorful design, this template is perfect for anyone selling toys or products for children. You get a product view and store page among many others, and the footer includes a Google Map and subscription form.

Darklook

Example of Darklook

Looking for something a little darker than all these bright, light designs? Darklook is great for technology and fashion shops. You’ll find cart, checkout, product detail, and blog post pages. The wide, large design puts a big emphasis on photography, so make sure you have high-res photos of your products to show off.

Shopper

Example of Shopper

This small template is great for medium to large shops of any kind. The simple three-color look is universally appealing, and it comes with a homepage, product list, product detail, contact, register, and cart page. This is enough to let you get your shop set up quickly.

Prezzie

Example of Prezzie

Last but not least is Prezzie, an extremely stylish and well-made template. With a built-in video slider header, gorgeous parallax effects, and a design that looks like it was custom made for you, you’ll quickly fall in love with this template.

Get Your Shop Running Quicker

HTML templates are so helpful because they save time, and they’re fairly easy to edit – even when you have limited knowledge of code. Often, it’s just a matter of replacing images and placeholder text, and you have a functioning website.

Of course, you’ll still need to add a payment gateway to your website, include product pages, and otherwise make your online store functional. But with one of these templates, you can skip the lengthy step of having to design and code a unique website, and start selling sooner.


Amazing Animated CSS Hover Effects

Original Source: http://feedproxy.google.com/~r/1stwebdesigner/~3/VQ7NnEiz5RY/

Have you ever visited a website and been stunned by a beautiful hover effect? Or have subtle UI animations left you feeling impressed with a site’s design? It may seem like a small detail, but hover animations can have a larger impact than you’d expect.

Good UI design means making interactive elements clear and visible, and hover effects can help you do just that. They look beautiful, and provide instant feedback when you hover over something that makes your UI easy to navigate.

These effects work particularly well in menu areas, but you can also use them on images, buttons, or other areas of your site too. These animations can leave a strong impression on people.

Today we’ve collected 17 awesome CSS hover effects, ranging from elegant menu and image hovers to more striking, unique animations. These are free for use under an MIT license, so try them on your site or use them as inspiration to create your own!

UNLIMITED DOWNLOADS: Email, admin, landing page & website templates

DOWNLOAD NOW

Rumble on Hover

See the Pen
Rumble on Hover by Kyle Foster (@hkfoster)
on CodePen.

Hover.css

See the Pen
Hover.css by vavik (@vavik96)
on CodePen.

Button on Hover Slide Effect

See the Pen
CSS Button On Hover Slide Effect by RazorX (@RazorXio)
on CodePen.

Shaking Shapes

See the Pen
Shaking Shapes by Laura Montgomery (@LauraMontgomery)
on CodePen.

Strikethrough Hover

See the Pen
Strikethrough hover by tsimenis (@tsimenis)
on CodePen.

Hover CSS3

See the Pen
Hover CSS3 by Berlin Eric (@eberlin)
on CodePen.

Image with Slide Up Title

See the Pen
#1107 – Image with slide up title on hover by LittleSnippets.net (@littlesnippets)
on CodePen.

Image and Title with Icons

See the Pen
#1193 – Image & title with icons on hover by LittleSnippets.net (@littlesnippets)
on CodePen.

Gradient Button Hover

See the Pen
Gradient Button Hover by Muhammed Erdem (@JavaScriptJunkie)
on CodePen.

Grow Hover Effect

See the Pen
CSS Grow Hover Effect by Adam Morgan (@AdamCCFC)
on CodePen.

Background Color Change on Hover

See the Pen
CSS Background Color Change on Hover by Ian Farb (@ianfarb)
on CodePen.

Fade Siblings on Hover

See the Pen
CSS-only Fade Siblings on Hover by Shaw (@shshaw)
on CodePen.

Pure CSS Blur Hover Effect

See the Pen
Pure CSS Blur Hover Effect by Matthew Craig (@mcraig218)
on CodePen.

Button Hover Effects

See the Pen
Button Hover Effects by Kyle Brumm (@kjbrum)
on CodePen.

Thumbnail Hover Effect

See the Pen
Pure CSS Thumbnail Hover Effect by Aysha Anggraini (@rrenula)
on CodePen.

Glitch Hover Effect

See the Pen
Glitch hover effect CSS by Kevin Konrad Henriquez (@kkhenriquez)
on CodePen.

Image Hover Effect

See the Pen
Pure CSS – Image Hover Effect by Bruno Beneducci (@brunobeneducci)
on CodePen.

Animate Your Website

When you’re designing a website, don’t neglect UI design. It’s one of the most important parts of a website’s look. And while other details like the layout of UI items, fonts, and colors will take up most of your focus, a well-placed hover animation can make a big difference.

Animations can also help define your brand and the tone of your website, along with help to complement its style. A distinctive glitchy hover effect could brand you as a technology company, or gradient animations would work well on upbeat, colorful websites.

Code on CodePen is free to use with their license, so try out one of these CSS hover effects for yourself. Or use these beautiful animations as inspiration as you make your own unique effects.


7 Top CSS Trends for 2019

Original Source: http://feedproxy.google.com/~r/1stwebdesigner/~3/WBsSMieFu3I/

As time goes on, web design is getting more innovative. Rather than just displaying information, websites are works of art, featuring complex animations, unique layouts, and micro-interactions. So many of these things are possible through CSS.

CSS gives style to normal, boring webpages, and enables everything that makes websites enjoyable to interact with. 2019 brings with it plenty of new horizons for web design, and these are the 7 CSS trends that will define the year.

UNLIMITED DOWNLOADS: Email, admin, landing page & website templates

DOWNLOAD NOW

CSS Grid
CSS Grid Generator

CSS Grid Generator

The prevailing standard for grid-based layouts has been Flexbox. In fact, at its height at the end of 2018, nearly 83% of page loads on Chrome used Flexbox. But a new contender has entered the ring.

That new contender is Grid. Still young and only seeing use on about 2.25% of page loads, it has still skyrocketed in popularity, only representing 0.25% of page loads at the start of 2018.

Grid is being hailed as better than Flexbox. Flexbox gives you control of vertical or horizontal alignment, but not both at once. Grid, on the other hand, does.

CSS experts attribute the lack of popularity to the fact that most major websites are not using it. After all, that data above is based on page views, not the raw number of pages that use Grid. It was only fairly recently that major sites adopted Flexbox, so it makes sense that they don’t want to make the switch just yet.

2019 will definitely see the growth of Grid, however, because it unlocks a degree of creative freedom that other options do not offer.

CSS Writing Mode

Example of CSS Writing Mode

Not all languages are written and read from left to right. For languages that go in other directions, you can use the writing-mode CSS property.

Flow text from top to bottom or from right to left and adjust the horizontal and vertical values. You can even display text sideways vertically, rotate the text for certain designs, and mix scripts.

Read up on CSS writing-mode »

Mobile Animations

 

Animations as a tool for engagement are increasingly popular. Websites will start to use more and more animated loading icons, page loads with limited design, etc. to keep the user’s attention.

An example of this from a popular website is YouTube. Open the YouTube mobile app and scroll through the videos. If you stop for a second, the video will autoplay with the sound off and show captions.

Animations are also used as indicators for an action or a task. Animated buttons and lists are becoming common too. Read all about using CSS animations here.

Popular Frameworks (Bulma, Tailwind, Bootstrap 4, etc.)

Foundation CSS Framework

CSS frameworks have been around for a while, but they’ve only been growing in popularity in recent years. If you need a primer on what a framework is, read this.

Awwwards defines a framework as:

“A framework is a standardized set of concepts, practices and criteria for dealing with a common type of problem, which can be used as a reference to help us approach and resolve new problems of a similar nature.”

As we move to a more mobile web, frameworks are adjusting to compensate. Styling and design are changing, animations and action are becoming more common, and a focus on simplicity and end user experience are more important than ever!

In 2019, many well designed frameworks are taking the lead and helping developers and designers to ship faster than ever. A few of the most notable frameworks being used around the web in 2019 are:

Foundation – Responsive, mobile-first framework and used as enterprise solution;
Bootstrap 4 – Bootstrap is one of the biggest CSS frameworks used worldwide, version 4 comes with new features for color schemes and utility classes;
Materialize – Popular framework focused on material design styles;

Read more about the top CSS frameworks for 2019 on Scotch.io.

Single Pages, Experimental Navigations

Carrd single page website builder.

With websites becoming almost as synonymous as having your own profile on social networks, more users are turning to simpler solutions and single page options to send traffic out to other locations.

Common examples include:

Linktree – Simple page with links to your socials, products, etc.;
Carrd – Simple, free, fully responsive one-page sites for pretty much anything;
About.me – More professional focused portfolio site, similar to LinkedIn but with room for creativity;
Instapage – Top landing page builder for businesses and startups;

These single page websites are being taken further with the creative use of CSS and styling to enhance the experience. The Next Web highlighted ‘large and experimental navigations’ as one of their ‘10 exciting web design trends you can’t hide from in 2019’. So why are people moving to these interesting layouts?

Because of action. With the focused large buttons and navigation, users immediately click to the desired location. Whether that be a shop, informational page with hours/details, or just a new video/song.

More and more websites are simply set up as directing points for companies, individuals, or groups to send traffic to and then distribute out. Musicians use Linktree and other services to share their new songs on all streaming platforms, and get a cut of the affiliate revenue in the meantime.

Variable Fonts

Google's 'Introduction to variable fonts on the web'.

Highlighted by Carrie Cousins for Designmodo’s ‘Top 17 Web Design and UI Trends for 2019’, variable fonts are defined as “a collection of master styles, with one central ‘default’ master (usually the Regular font style) and multiple registered “axes” which tie the central master to the other masters. For example, the Weight axis might connect a Light style master to the default style and through to the Bold style master. The individual styles that can be located along this axis are called “instances”.

What this means is that fonts are more responsive and seamless across devices and platforms. You can scale the width, sizing, and other aspects of the font more easily without jumping from font weight to font weight or switching fonts entirely.

Check out an example of the variable typeface ‘Amstelvar’ on GitHub. Also read the full analysis on variable fonts and how they will change the web from Google.

Scroll Snapping

'Practical CSS Scroll Snapping' from CSS Tricks.

Last, but not least, scroll snapping is a relatively new technique used for snapping users to certain scroll points. Rather than a fluid motion down the page or left to right, you can have the page scroll in increments. Popular uses of this are for swiping through products or details on a page, scrolling through a book/reading experience, and sliding down a page with incremental blocks of information.

CSS Tricks features a great guide on Practical CSS Scroll Snapping.

The guide features information on browser support, best practices, and the properties you should use to ensure your scroll snapping works as intended.

Want to see how scroll snapping works? Check out these examples on Webkit.

The Present and Future of CSS

There you have it. These are 7 of the top trends and developments for CSS in 2019. What is your favorite trend?


How to Create Web Animations with Anime.js

Original Source: https://www.sitepoint.com/get-started-anime-js/?utm_source=rss

There are many JavaScript animation libraries out there, but Anime.js is one of the best. It’s easy to use, has a small and simple API, and offers everything you could want from a modern animation engine. The library has a small file size and supports all modern browsers, including IE/Edge 11+.

The only thing that could stop you from using Anime.js right away is its minimal, zen-like documentation. I like the compact, structured, elegant approach it takes, but I think that a more detailed explanation would be helpful. I’ll try to fix this issue in this tutorial.

Getting Started With Anime.js

To get started, download and include the anime.js file in your HTML page:

<script src=”path/to/anime.min.js”></script>

Alternatively, you can use the latest version of the library hosted on a CDN:

<script src=”https://cdn.jsdelivr.net/npm/animejs@3.0.1/lib/anime.min.js”></script>

Now, to create an animation, we use the anime() function, which takes an object as an argument. In that object, we describe all the animation details.

let myAnimation = anime({
/* describe the animation details */
});

There are several kinds of properties used to describe the animation. They are grouped into four distinct categories:

Targets – this includes a reference to the element(s) we want to animate. It could be a CSS selector (div, #square, .rectangle), DOM node or node list, or plain JavaScript object. There is also an option to use a mix of the above in an array.
Properties – this includes all properties and attributes that can be animated when dealing with CSS, JavaScript objects, DOM, and SVG.
Property Parameters – this includes property-related parameters like duration, delay, easing, etc.
Animation Parameters – this includes animation-related parameters like direction, loop, etc.

Let’s now see how this applies in practice. Consider the following example:

let animation = anime({
targets: ‘div’,
// Properties
translateX: 100,
borderRadius: 50,
// Property Parameters
duration: 2000,
easing: ‘linear’,
// Animation Parameters
direction: ‘alternate’
});

See the Pen
AnimeJS: Basic Example by SitePoint (@SitePoint)
on CodePen.

Note: I’m not going to cover the HTML and CSS sections of the code in the tutorial. These tend to be easy to grasp without additional explanation. You can find and explore the HTML and CSS in the embedded pens that follow each example.

In the above example:

We select the green square (the styled div).
We move it 100 pixels to the left while transforming it into a circle.
We set all this to happen smoothly in two seconds (linear means that no easing will be applied to the animation).
By setting the direction property to alternate, we instruct the div element to go back to its initial position and shape after animation completion. Anime.js does that by playing the animation in reverse order.

You may notice that I don’t use any units when specifying property values. That’s because if the original value has a unit, it is automatically added to the animated value. So, we can safely omit the units. But if we want to use a specific unit we must add it intentionally.

Let’s create something more meaningful.

Creating a Pendulum Animation

In this example, we will create a pendulum animation. After we “draw” a pendulum using our HTML and CSS skills, it’s time to bring it to life:

let animation = anime({
targets: ‘#rod’,
rotate: [60, -60], // from 60 to -60 degrees
duration: 3000,
easing: ‘easeInOutSine’,
direction: ‘alternate’,
loop: true
});

See the Pen
AnimeJS: Pendulum Animation by SitePoint (@SitePoint)
on CodePen.

In this animation, we use the so-called from-to value type, which defines a range of movement for the animation. In our case, the rod of the pendulum is rotated from 60 to -60 degrees. We also use easeInOutSine easing to simulate the natural motion of pendulum which slows down at peaks and gets faster at the bottom. We use the alternate option again to move the pendulum in both directions and set the loop parameter to true to repeat the movement endlessly.

Well done. Let’s move to the next example.

Creating a Battery Charge Animation

In this example, we want to create an animated icon of a charging battery, similar to the icons on our smartphones. This is easily doable with a bit of HTML and CSS. Here is the code for the animation:

The post How to Create Web Animations with Anime.js appeared first on SitePoint.

A Look at Why Web Projects Stall

Original Source: http://feedproxy.google.com/~r/1stwebdesigner/~3/HaqUEuEEABE/

There’s nothing quite like the feeling of booking a new project. You immediately start thinking of it’s potential to boost your portfolio and your bank account (you may have even received a nice down payment).

And there’s often a great level of excitement from your client as well. They just can’t wait to get started and want to have things up and running as soon as possible. This is just fine with you, as you love crossing items off of your to-do list.

So, everybody’s just raring to go, right? Perhaps they are, for a little while. But over time, all of that initial elation fades away – along with any signs of progress. All of the sudden, you find yourself in the middle of a stalled project.

Why did this happen? And what can you do about it? We have some ideas! Let’s explore the common ways a project can slow to a crawl (or worse) and some ways to jumpstart it back to life.

A Wakeup Call

There is always a high level of optimism at the very beginning of a project. And clients usually have a lot of big ideas, too.

But when it’s time to actually do the work, reality sets in. What sounded like a piece of cake in meetings turns out to be more difficult than initially thought. This is a common theme when working with clients.

However, it’s not just the degree of difficulty that gets in the way. Time, or lack of it, can also play a major role. Clients who are already swamped with work may just not have an opportunity to get together content and other promised assets.

The result is that the website you were supposed to build in six weeks is past due, and it’s because you don’t have what you need to finish the job.

A wall clock.

The Domino Effect

For web designers, this situation is frustrating on several levels. First, it can have a negative impact on your schedule. If you blocked off a certain amount of time to finish a project, you might be left waiting around with nothing to do. And once it finally does start to move forward again, it could clash with other work you have to get done.

Along with a reshuffled schedule, a stalled project can also hurt you financially. When you’re counting being paid for your work at a specific time and it doesn’t happen – that can really hinder your ability to pay the bills.

Plus, this can also put a heavy strain on the relationship you have with your client. There’s a certain level of mutual trust and cooperation that is needed to ensure a positive end result. In some instances, you may feel like your client isn’t holding up their end of the bargain, thus throwing your life into disarray. This, as much as anything, can make it difficult to move forward (even after you finally receive those product photos).

In short, a whole lot of trouble can come out of a stalled project. And the worst part is that, from a designer’s perspective, it can sometimes seem completely unnecessary.

Toy blocks scattered on a floor.

How to Keep the Ball Rolling

While you can’t necessarily avoid every instance of a stalled project, there are some things you can do to help try and keep things moving forward. Among them:

Establish Benchmarks

Having a mutually agreed-upon schedule of project benchmarks can be just the incentive a client needs to get things done. This is something you can discuss before things start and include in your contract. If the project is rather large, you might even consider adding some level of financial penalties for missed deadlines.

However, this may be easier said than done. It’s advisable to speak with a legal professional when adding this type of language to a contract as it could backfire on you. Not only that, but some clients may balk at the terms.

Offer to Help

Not all delays are due to negligence or being too busy. Sometimes, a client may be a bit overwhelmed by the process of putting together materials for their website. They may not know where to begin or are just unsure about asking for help.

So, if things don’t appear to be moving along as you expected, reach out and offer your assistance. Check in and see if they have any questions or need some advice. You might find that, by being proactive, you can restart progress.

Break Down the Process

Another reason a client might feel overwhelmed is that they think everything needs to be taken care of at once. But for most projects this just isn’t the case.

One solution may be found in more clearly communicating the design process. Inform your clients about the steps involved and what you need to complete each one. A more iterative process might just lead to fewer fits and starts.

Person walking up a flight of stairs.

Keeping a Watchful Eye

One of the less talked-about parts of a web designer’s job is that of project management. It is so often up to us to keep things running smoothly. Although, instead of making sure employees stay on task, we’re usually focusing on clients.

This is difficult, as we can’t really control what our clients do (or don’t do). Therefore, our best weapon is communication. If we don’t lead by spelling out our processes and their requirements, the project will most likely stall at some point.

Using some or all of the tips above can help you keep clients in the loop. While they don’t guarantee success, they do put all of the expectations out in the open. This way, if your client still doesn’t deliver, it’s on them. At the very least, you can say that you made the effort to keep the project moving forward.


Image Trail Effects

Original Source: http://feedproxy.google.com/~r/tympanus/~3/100PMCI_uB4/

Today we’d like to share a fun mouse interaction effect with you that we found on the VLNC Studio website. The idea is to follow the mouse and show a trail of random images. It’s a kind of brutalist effect and there are various possibilities when it comes to showing and hiding the images. So we compiled a set of demos that explores different animations.

The animations are powered by TweenMax.

Attention: Note that the demos are experimental and that we use modern CSS properties that might not be supported in older browsers.

The main idea is to show the images quickly so that a trail forms along the movement of the mouse.

ImageTrailEffects_01

While there’s different ways to show the images, there’s also lots of room to play with the effects that make them disappear.

ImageTrailEffects_02

Demo 3 shows how we can make the images “drop” when they disappear:

ImageTrailEffects_03

We can also add a bit of a squeeze, too:

ImageTrailEffects_04

The last demo explores setting the size of the image to be fullscreen and restricting the movement to the sides only:

ImageTrailEffects_05

This effect is inspired by Ricky Michiels website.

Here’s a short GIF that shows the effect of demo 2 where we scale the images up and fade them out:

ImageTrailEffects.2019-08-07 11_22_55

We hope you enjoy these demos and find them useful.

References and Credits

TweenMax by Greensock
imagesLoaded by Dave DeSandro
Images from Unsplash.com

Image Trail Effects was written by Mary Lou and published on Codrops.

How to Set Up a Vue Development Environment

Original Source: https://www.sitepoint.com/vue-development-environment/?utm_source=rss

Setting Up a Vue Development Environment

If you’re going to do any serious amount of work with Vue, it’ll pay dividends in the long run to invest some time in setting up your coding environment. A powerful editor and a few well-chosen tools will make you more productive and ultimately a happier developer.

In this post, I’m going to demonstrate how to configure VS Code to work with Vue. I’m going to show how to use ESLint and Prettier to lint and format your code and how to use Vue’s browser tools to take a peek at what’s going on under the hood in a Vue app. When you’ve finished reading, you’ll have a working development environment set up and will be ready to start coding Vue apps like a boss.

Let’s get to it!

Want to learn Vue.js from the ground up? This article is an extract from our Premium library. Get an entire collection of Vue books covering fundamentals, projects, tips and tools & more with SitePoint Premium. Join now for just $9/month.

Installing and Setting Up Your Editor

I said that I was going to be using VS Code for this tutorial, but I’m afraid I lied. I’m actually going to be using VSCodium, which is an open-source fork of VS Code without the Microsoft branding, telemetry and licensing. The project is under active development and I’d encourage you to check it out.

It doesn’t matter which editor you use to follow along; both are available for Linux, Mac and Windows. You can download the latest release of VSCodium here, or download the latest release of VSCode here and install it in the correct way for your operating system.

Throughout the rest of this guide, for the sake of consistency, I’ll refer to the editor as VS Code.

Add the Vetur Extension

When you fire up the editor, you’ll notice a set of five icons in a toolbar on the left-hand side of the window. If you click the bottom of these icons (the square one), a search bar will open up that enables you to search the VS Code Marketplace. Type “vue” into the search bar and you should see dozens of extensions listed, each claiming to do something slightly different.

The post How to Set Up a Vue Development Environment appeared first on SitePoint.

Spruce Up Your Projects With These 19 Nature Fonts

Original Source: http://feedproxy.google.com/~r/1stwebdesigner/~3/zNfK_GizE-o/

Are you on the hunt for some gorgeous decorative nature fonts to spruce up your website or design project? Nothing is better than a well-made font to complete the look. If you’re going for a flower or nature theme, these are just the thing.

You may prefer a fancy typeface with lots of decorations, or one that more subtly embodies a natural aesthetic. No matter what you’re looking for, there’s a beautiful font here that will suit your needs. Some like Into the Wild and Bouquet Flower go all out with the design, and others like Northern Passage and Autumn Leaves simply look earthy or rustic.

Take a look at this selection of nineteen wild nature fonts, and see what gems we’ve collected for yourself.

UNLIMITED DOWNLOADS: 400,000+ Fonts & Design Assets

DOWNLOAD NOW

The Golden Leaves by Innire

Example of The Golden Leaves by Innire

Peomy Extended

Example of Peomy Extended

Flash by George Williams

Example of Flash by George Williams

Autumn Embrace Floral Font by anmark

Example of Autumn Embrace Floral Font by anmark

Earth Elements Typeface by Anna Ivanir

Example of Earth Elements Typeface by Anna Ivanir

Curly Fleur Caps by Lime

Example of Curly Fleur Caps by Lime

One Two Trees by CloutierFontes

Example of One Two Trees by CloutierFontes

Lemon Grass Script by Mellow Design Lab

Example of Lemon Grass Script by Mellow Design Lab

Pinebrick Typeface

Example of Pinebrick Typeface

Tortoise and Deer by Emma Make

Example of Tortoise and Deer by Emma Make

VTKS Flowers in Our Soul by Douglas Vitkauskas

Example of VTKS Flowers in Our Soul by Douglas Vitkauskas

Bouqet Flower & Watercolor by bloomxxvi

Example of Bouqet Flower & Watercolor by bloomxxvi

Amelie Floral Display Font by Alisovna

Example of Amelie Floral Display Font by Alisovna

Northern Passage

Example of Northern Passage

Camp Fire by Typographer Mediengestaltung

Example of Camp Fire by Typographer Mediengestaltung

Forest Camp by Opus Nigrum

Example of Forest Camp by Opus Nigrum

Forests Layered Font by Zeppelin Graphics

Example of Forests Layered Font by Zeppelin Graphics

Autumn Leaves by madeDeduk

Example of Autumn Leaves by madeDeduk

Into the Wild – Double Exposure Font by Cosmic Store

Example of Into the Wild - Double Exposure Font by Cosmic Store

Try These Nature-Inspired Fonts

Flower and nature fonts are great for decoration all year round. Spring, summer, fall, or winter, remind people of the great outdoors by including a font with a lot of character. Any site with an outdoorsy theme would look that much more amazing with one of these quality typefaces.

There’s a lot of variety in this list, so finding a fitting font should be a snap. Whether you love simple typefaces or extravagant ones, try a nature font from the collection and see how it looks in your design.


Writing Modes And CSS Layout

Original Source: https://www.smashingmagazine.com/2019/08/writing-modes-layout/

Writing Modes And CSS Layout

Writing Modes And CSS Layout

Rachel Andrew

2019-08-06T14:00:00+02:00
2019-08-06T12:07:02+00:00

In this article I am going to take a look at the CSS writing-mode property. However this is not an article about the practical or creative application of this property. Instead, I want to demonstrate why understanding writing modes is so important, even to those of us who rarely need to change the writing mode of a page or component. The support of multiple writing modes is key to the way that our new layout methods of Flexbox and Grid Layout have been designed. Understanding this can unlock a better understanding of how these layout methods work.

What Are Writing Modes?

The writing mode of a document or a component refers to the direction that text flows. In CSS, to work with writing modes we use the writing-mode property. This property can take the following values:

horizontal-tb
vertical-rl
vertical-lr
sideways-rl
sideways-lr

If you are reading this article on Smashing Magazine in English then the writing mode of this document is horizontal-tb, or Horizontal Top To Bottom. In English sentences are written horizontally, the first letter of each line starting on the left.

A language such as Arabic also has a horizontal-tb writing mode. It is written horizontally, top to bottom, however Arabic script is written right to left, and so sentences in Arabic start on the right.

Chinese, Japanese and Korean are written vertically, with the first character of the first sentence being top right. Following sentences being added to the left. Therefore the writing mode used is vertical-rl. A vertical writing mode running from right to left.

Mongolian is also written vertically, but from left to right. Therefore, should you want to typeset Mongolian script you would use the writing mode vertical-lr.

The other two values of writing-mode are designed more for creative purposes than for typesetting vertical scripts. Using sideways-lr and sideways-rl turns text sideways – even characters normally written vertically and upright. The values unfortunately are only supported in Firefox at the moment. The following CodePen shows all of the different values of writing-mode, you will need to use Firefox if you want to see the sideways-* ones in action.

See the Pen [Writing Mode demo](https://codepen.io/rachelandrew/pen/dxVVRj) by Rachel Andrew.

See the Pen Writing Mode demo by Rachel Andrew.

Writing Modes can be used when creating a document that uses a language written using that writing mode. They can also be used creatively, for example to set a heading vertically down the side of some content. In this article however, I want to take a look at the impact that supporting vertical languages, and the possibility of vertical text, has on CSS layout, and across CSS in general.

Before I do so, if you are interested in the use of writing modes for vertical text, here are some useful resources.

The W3C Internationalization site has a wealth of useful information. Read about RTL scripts and vertical text.
Jen Simmons wrote an excellent article about CSS Writing Modes which also includes several examples from print of these modes in use.
Thoughts on the world and our writing systems – Chen Hui Jing
Vertical Typesetting With Writing Mode revisited – Chen Hui Jing
The writing-mode property on MDN

The Block And Inline Dimensions

When we change the writing mode of a document, what we are doing is switching the direction of the block flow. Therefore it quickly becomes very useful for us to understand what is meant by block and inline.

One of the first things we learn about CSS is that some elements are block elements, for example a paragraph. These elements display one after the other in the block direction. Inline elements, such as a word in a sentence display one after the other in the inline direction. Working in a horizontal writing mode, we become used to the fact that the block dimension runs top to bottom vertically, and the inline dimension left to right horizontally.

As block and inline elements relate to the writing mode of our document however, the inline dimension is horizontal only if we are in a horizontal writing mode. It doesn’t relate to width, but instead to inline size. The block dimension is only vertical when in a horizontal writing mode. Therefore it doesn’t relate to height, but to block size.

Logical, Flow-relative Properties

These terms, inline size and block size are also used as the names of new CSS properties designed to reflect our new writing mode aware world. If, in a horizontal writing mode you use the property inline-size instead of width, it will act in exactly the same way as width – until you switch the writing mode of your component. If you use width that will always be a physical dimension, it will always be the size of the component horizontally. If you use inline-size, that will be the size in the inline dimension, as the below example shows.

See the Pen [width vs. inline-size](https://codepen.io/rachelandrew/pen/RXLLyd) by Rachel Andrew.

See the Pen width vs. inline-size by Rachel Andrew.

The same is true for height. The height property will always be the size vertically. It relates to how tall the item is. The block-size property however gives the size in the block dimension, vertically if we are in a horizontal writing mode and horizontal in a vertical one.

As I described in my article “Understanding Logical Properties And Values”, there are mappings for all of the physical properties, those which are tied to the dimensions of the screen. Once you start to think about it, so much of CSS is specified in relation to the physical layout of a screen. We set positioning, margins, padding and borders using top, right, bottom, and left. We float things left and right. Sometimes tying things to the physical dimension will be what we want, however increasingly we are thinking about our layouts without reference to physical location. The Logical Properties and Values specification rolls out this writing mode agnostic way of working right across CSS.

Writing Modes, Grid and Flexbox

When our new layout methods landed on the scene, they brought with them an agnostic way of looking at the writing mode of the component being laid out as a flex or grid layout. For the first time people were being asked to think about start and end, rather than left and right, top and bottom.

When I first started to present on the subject of CSS Grid, my early presentations were a rundown of all of the properties in the specification. I mentioned that the grid-area property could be used to set all four lines to place a grid item. The order of those lines was not however the familiar top, right, bottom and left we use to set all four margins. Instead, we need to use top, left, bottom, right – the reverse of that order! Until I understood the connection between grid and writing modes, this seemed a very odd decision. I came to realise that what we are doing is setting both start lines, then both end lines. Using top, right, bottom and left would work fine if we were in a horizontal writing mode, turn the grid on its side however and that makes no sense. If we use grid-area: 1 / 2 / 3 / 5; as in the pen below the lines are set as follows:

grid-row-start: 1; – block start
grid-column-start: 2 – inline start
grid-row-end: 3 – block end
grid-column-end: 5 – inline end

See the Pen [grid-area](https://codepen.io/rachelandrew/pen/zgEEQW) by Rachel Andrew.

See the Pen grid-area by Rachel Andrew.

Flexbox Rows And Columns

If you use flexbox, and add display: flex to a container, your items will display as a row as the intial value of the flex-direction property is row. A row will follow the inline dimension of the writing mode in use. Therefore if your writing mode is horizontal-tb a row runs horizontally. If the text direction of the current script is left to right then items will line up starting from the left, if it is right to left they will line up starting on the right.

Use a vertical writing mode however, such as vertical-rl and flex-direction: row will cause the items to lay out vertically, as the inline direction is vertical. In this next CodePen all of the examples have flex-direction: row, only the writing mode or direction has changed.

See the Pen [flex-direction: row](https://codepen.io/rachelandrew/pen/XvezrE) by Rachel Andrew.

See the Pen flex-direction: row by Rachel Andrew.

Add flex-direction: column, and the items layout in the block dimension of your writing mode. In a horizontal writing mode the block dimension is top to bottom, so a column is vertical. With a writing mode of vertical-rl a column is horizontal. As with the previous example, the only difference between the below flex layouts, is the writing mode being used.

See the Pen [flex-direction: column](https://codepen.io/rachelandrew/pen/RXLjbX) by Rachel Andrew.

See the Pen flex-direction: column by Rachel Andrew.

Grid Auto-placement

When using auto-placement in grid, you will see similar behavior to that in flex layout. Grid items auto-place according to the writing mode of the document. The default is to place items in rows, which will be the inline direction – horizontally in a horizontal writing mode and vertically in a vertical one.

See the Pen [Grid auto-placement row](https://codepen.io/rachelandrew/pen/eqGeYV) by Rachel Andrew.

See the Pen Grid auto-placement row by Rachel Andrew.

Try changing the flow of items to column as in the example below. The items will now flow in the block dimension – vertically in a horizontal writing mode and horizontally in a vertical one.

See the Pen [Grid auto-placement column](https://codepen.io/rachelandrew/pen/xvXPby) by Rachel Andrew.

See the Pen Grid auto-placement column by Rachel Andrew.

Grid Line-placed Placement

Line-based placement also respects writing mode. The lines of our grid start at 1, both for rows and columns. If we position an item from column line 1 to column line 3, and are in a horizontal writing mode with a left to right direction, that item will stretch from the left-most column line across two grid tracks horizontally. Thus spanning two columns.

Change the writing mode to vertical-rl and column line 1 will be at the top of the grid, the item spanning two tracks vertically. Still spanning two columns, but the columns are now running horizontally.

See the Pen [Margins: adjacent siblings](https://codepen.io/rachelandrew/pen/mNBqEy) by Rachel Andrew.

See the Pen Margins: adjacent siblings by Rachel Andrew.

Alignment In Grid And Flexbox

One of the first places many people will have come into contact with the way Flexbox dealt with writing modes, would be when aligning items in a flex layout. If we take the flex-direction: row example above, and use the justify-content property to align all of the items to flex-end the items move to the end of their row. This means that in a horizontal writing mode with left to right direct the items all move to the right, as the end of that row is on the right. If the direction is right to left they all move to the left.

In the vertical writing mode they move to the bottom, assuming there is space for them to do so. I have set an inline-size on the components in this example to ensure that we have spare space in our flex containers to see the alignment in action.

Alignment is a little easier to understand in grid layout, as we always have the two axes to play with. Grid is two-dimensional, those two dimensions are block and inline. Therefore, you can remember one rule if you want to know whether to use the properties that begin with align- or those which begin with justify-. In grid layout the align- properties:- align-content, align-items, align-self are used to do block axis alignment. In a horizontal writing mode that means vertically, and in a vertical writing mode horizontally.

Once again we don’t use left and right or top and bottom, as we want our grid layout to work in exactly the same way no matter what the writing mode. So we align using start and end. If we align to start on the block dimension, that will be top when in horizontal-tb, but will be right when in vertical-rl. Take a look in the example below, the alignment values are identical in both grids, the only difference is the writing mode used.

See the Pen [Margins: adjacent siblings](https://codepen.io/rachelandrew/pen/jgGaML) by Rachel Andrew.

See the Pen Margins: adjacent siblings by Rachel Andrew.

The properties justify-content, justify-items,justify-self are always used for inline alignment in grid layout. That will be horizontal in a horizontal writing mode and vertical in a vertical writing mode.

See the Pen [Margins: adjacent siblings](https://codepen.io/rachelandrew/pen/RXLjpP) by Rachel Andrew.

See the Pen Margins: adjacent siblings by Rachel Andrew.

Flexbox alignment is complicated somewhat by the fact that the main axis can be switched from row to column. Therefore in flexbox we need to think about the alignment method as main axis versus cross axis. The align- properties are used on the cross axis. On the main axis all you have is justify-content due to the fact that in flexbox we deal with items as a group. On the cross axis you can use align-content in cases where you have multiple flex lines AND space in the flex container to space them out. You can also use align-items and align-self to move the flex items on the cross axis in relationship to each other and their flex line.

See the Pen [Flexbox alignment](https://codepen.io/rachelandrew/pen/YmrExP) by Rachel Andrew.

See the Pen Flexbox alignment by Rachel Andrew.

For more on alignment in CSS layout see my previous Smashing Magazine articles:

How To Align Things In CSS
Everything You Need To Know About Alignment In Flexbox

Writing Mode Awareness And Older CSS

Not all of CSS has fully caught up with this flow-relative, writing mode agnostic way of working. The places where it has not start to stand out as unusual the more you think of things in terms of block and inline, start and end. For example in multi-column layout we specify column-width, which really means column inline-size, as it isn’t mapped to the physical width when working in a vertical writing mode.

See the Pen [Multicol and writing-mode](https://codepen.io/rachelandrew/pen/pMWdLL) by Rachel Andrew.

See the Pen Multicol and writing-mode by Rachel Andrew.

As you can see, writing modes underpin much of what we do in CSS, even if we never use a writing mode other than horizontal-tb.

I find it incredibly helpful to think about CSS layout in this writing mode agnostic way. While it is perhaps a little early to be switching all of our properties and values to logical ones, we are already in a flow-relative world when dealing with new layout methods. Having your mental model be one of block and inline, start and end, rather than tied to the four corners of your screen, clarifies many of the things we come across when using flexbox and grid.

Smashing Editorial
(ra)

Tour de France rebrands and drops the 'le'

Original Source: http://feedproxy.google.com/~r/CreativeBloq/~3/DM-e4FCn_bM/tour-de-france-rebrand

Le Tour de France is now just Tour de France, according to its new logo. A new bright yellow version of the cycling race's logo was used throughout this year's competition. 

And yes, we know, we're a little late to the party, but in all fairness, the competition itself seemed to unveil the new logo and identity with little fanfare, and we were too busy watching Wimbledon/reading our guide to logo design to notice. 

The new logo (designer unknown) sticks with the same scrawly font as before, but with subtle differences to the previous logo, created by Joel Guenoun in 2002. The 'o' is now a full circle – which makes sense as it looks more like a wheel than before, the 'u' is less squished in and therefore easier to read, the 'r', or cyclist, is now slightly easier to read too, and there are subtle changes to the letters in the word 'France', which overall add to legibility. 

Tour de France

The new logo is trademarked, in case you didn’t know

The 'de' in the logo has also moved, making the logo less likely to be read as 'Le de Tour France'. And of course, the 'le' has gone altogether. This is perhaps the most interesting move in terms of the letters, because the competition is still known as LeTour, even on its own Twitter feed. Was it because the organisers were fed up of people who don't speak French butchering the 'le'? Or was it simply to make the logo neater and easier to place? The designer has also added a 'TM' to the logo, which feels a little unnecessary. 

Tour de France

The previous Tour de France logo, complete with a ‘le’

You can see the new logo in action on @LeTour's Twitter feed, below. 

The colour palette is also notable. The use of bright yellow, although a little garish, does make sense for Tour de France. The yellow jersey (maillot jaune) is worn by the leader of the race at each stage, and by the winner at the end. And while the previous logo was a sort of nod to this, its circle was more of an orangey hue. This logo matches the jersey much more. 

See more about the yellow jersey in the video below. 

The dazzling yellow as the wheel/sun of the logo, as well as across the identity in general also reflects the summery feel to the competition, and many will already associate the race with long hot days. 

And while those who weren't keen on the previous logo will have hoped the logo would change more significantly, we're just pleased that the 'hidden rider' is still present in the logo. The enlarged 'u' does break this design up a bit, but we think the rider is easier to see now. Although that's perhaps because we can't 'unsee' it.