Archive

Archive for January, 2021

Two Issues Styling the Details Element and How to Solve Them

January 13th, 2021 No comments

In the not-too-distant past, even basic accordion-like interactions required JavaScript event listeners or some CSS… trickery. And, depending on the solution used, editing the underlying HTML could get complicated.

Now, the

and

elements (which combine to form what’s called a “disclosure widget”) have made creation and maintenance of these components relatively trivial.

At my job, we use them for things like frequently asked questions.

Pretty standard question/answer format

There are a couple of issues to consider

Because expand-and-collapse interactivity is already baked into the

and

HTML tags, you can now make disclosure widgets without any JavaScript or CSS. But you still might want some. Left unstyled,

disclosure widgets present us with two issues.

Issue 1: The

cursor

Though the

section invites interaction, the element’s default cursor is a text selection icon rather than the pointing finger you may expect:

We get the text cursor but might prefer the pointer to indicate interaction instead.

Issue 2: Nested block elements in

Nesting a block-level element (e.g. a heading) inside a

element pushes that content down below the arrow marker, rather than keeping it inline:

Block-level elements won’t share space with the summary marker.

The CSS Reset fix

To remedy these issues, we can add the following two styles to the reset section of our stylesheets:

details summary { 
  cursor: pointer;
}

details summary > * {
  display: inline;
}

Read on for more on each issue and its respective solution.

Changing the

cursor value

When users hover over an element on a page, we always want them to see a cursor “that reflects the expected user interaction on that element.”

We touched briefly on the fact that, although

elements are interactive (like a link or form button), its default cursor is not the pointing finger we typically see for such elements. Instead, we get the text cursor, which we usually expect when entering or selecting text on a page.

To fix this, switch the cursor’s value to pointer:

details summary { 
  cursor: pointer;
}
CodePen Embed Fallback

Some notable sites already include this property when they style

elements. The MDN Web Docs page on the element itself does exactly that. GitHub also uses disclosure widgets for certain items, like the actions to watch, star and fork a repo.

GitHub uses cursor: pointer on the

element of its disclosure widget menus.

I’m guessing the default cursor: text value was chosen to indicate that the summary text can (along with the rest of a disclosure widget’s content) be selected by the user. But, in most cases, I feel it’s more important to indicate that the

element is interactive.

Summary text is still selectable, even after we’ve changed the cursor value from text to pointer. Note that changing the cursor only affects appearance, and not its functionality.

Displaying nested

contents inline

Inside each

section of the FAQ entries I shared earlier, I usually enclose the question in an appropriate heading tag (depending on the page outline):

<details>
  <summary>
    <h3>Will my child's 504 Plan be implemented?</h3>
  </summary>
  <p>Yes. Similar to the Spring, case managers will reach out to students.</p>
</details>

Nesting a heading inside

can be helpful for a few reasons:

  • Consistent visual styling. I like my FAQ questions to look like other headings on my pages.
  • Using headings keeps the page structure valid for users of Internet Explorer and pre-Chromium versions of Edge, which don’t support
    elements. (In these browsers, such content is always visible, rather than interactive.)
  • Proper headings can help users of assistive technologies navigate within pages. (That said, headings within
    elements pose a unique case, as explained in detail below. Some screen readers interpret these headings as what they are, but others don’t.)

Headings vs. buttons

Keep in mind that the

element is a bit of an odd duck. It operates like a button in many ways. In fact, it even has implicit role=button ARIA mapping. But, very much unlike buttons, headings are allowed to be nested directly inside

elements.

This poses us — and browser and assistive technology developers — with a contradiction:

  • Headings are permitted in
    elements to provide in-page navigational assistance.
  • Buttons strip the semantics out of anything (like headings) nested within them.

Unfortunately, assistive technologies are inconsistent in how they’ve handled this situation. Some screen-reading technologies, like NVDA and Apple’s VoiceOver, do acknowledge headings inside

elements. JAWS, on the other hand, does not.

What this means for us is that, when we place a heading inside a

, we can style the heading’s appearance. But we cannot guarantee our heading will actually be interpreted as a heading!

In other words, it probably doesn’t hurt to put a heading there. It just may not always help.

Inline all the things

When using a heading tag (or another block element) directly inside our

, we’ll probably want to change its display style to inline. Otherwise, we’ll get some undesired wrapping, like the expand/collapse arrow icon displayed above the heading, instead of beside it.

We can use the following CSS to apply a display value of inline to every heading — and to any other element nested directly inside the

:

details summary > * { 
  display: inline;
}
CodePen Embed Fallback

A couple notes on this technique. First, I recommend using inline, and not inline-block, as the line wrapping issue still occurs with inline-block when the heading text extends beyond one line.

Second, rather than changing the display value of the nested elements, you might be tempted to replace the

element’s default display: list-item value with display: flex. At least I was! However, if we do this, the arrow marker will disappear. Whoops!

Bonus tip: Excluding Internet Explorer from your styles

I mentioned earlier that Internet Explorer and pre-Chromium (a.k.a. EdgeHTML) versions of Edge don’t support

elements. So, unless we’re using polyfills for these browsers, we may want to make sure our custom disclosure widget styles aren’t applied for them. Otherwise, we end up with a situation where all our inline styling garbles the element.

Inline

headings could have odd or undesirable effects in Internet Explorer and EdgeHTML.

Plus, the

element is no longer interactive when this happens, meaning the cursor’s default text style is more appropriate than pointer.

If we decide that we want our reset styles to target only the appropriate browsers, we can add a feature query that prevents IE and EdgeHTML from ever having our styles applied. Here’s how we do that using @supports to detect a feature only those browsers support:

@supports not (-ms-ime-align: auto) {

  details summary { 
    cursor: pointer;
  }

  details summary > * { 
    display: inline;
  }

  /* Plus any other <details>/<summary> styles you want IE to ignore.
}

IE actually doesn’t support feature queries at all, so it will ignore everything in the above block, which is fine! EdgeHTML does support feature queries, but it too will not apply anything within the block, as it is the only browser engine that supports -ms-ime-align.

The main caveat here is that there are also a few older versions of Chrome (namely 12-27) and Safari (macOS and iOS versions 6-8) that do support

but don’t support feature queries. Using a feature query means that these browsers, which account for about 0.06% of global usage (as of January 2021), will not apply our custom disclosure widget styles, either.

Using a @supports selector(details) block, instead of @supports not (-ms-ime-align: auto), would be an ideal solution. But selector queries have even less browser support than property-based feature queries.

Final thoughts

Once we’ve got our HTML structure set and our two CSS reset styles added, we can spruce up all our disclosure widgets however else we like. Even some simple border and background color styles can go a long way for aesthetics and usability. Just know that customizing the

markers can get a little complicated!

CodePen Embed Fallback

The post Two Issues Styling the Details Element and How to Solve Them appeared first on CSS-Tricks.

You can support CSS-Tricks by being an MVP Supporter.

Categories: Designing, Others Tags:

A (terrible?) way to do footnotes in HTML

January 13th, 2021 No comments

Terence Eden poked around with a way to do footnotes using the

/

elements. I think it’s kind of clever. Rather than a hyperlink that jumps down to explain the footnote elsewhere, the details are right there next to the text. I like that proximity in the code. Plus, you get the native open/close interactivity of the disclosure widget.

It’s got some tricky parts though. The

element is block-level, so it needs to become inline to be the footnote, and sized/positioned to look “right.” I think it’s a shame that it won’t sit within a

tag, so that makes it impractical for my own usage.

Craig Shoemaker in the comments forked the original to fiddle with the CSS, and that inspired me to do the same.

Rather than display the footnote text itself right inline (which is extra-tricky), I moved that content to a fixed-position location at the bottom of the page:

CodePen Embed Fallback

I’m not 100% convinced it’s a good idea, but I’m also not convinced it’s a terrible one.


The post A (terrible?) way to do footnotes in HTML appeared first on CSS-Tricks.

You can support CSS-Tricks by being an MVP Supporter.

Categories: Designing, Others Tags:

What’s New in Ecommerce, January 2021

January 13th, 2021 No comments

Ecommerce design may seem fairly straight-forward; you build an online store that showcases a company’s products or services and gives customers a quick and pain-free way to purchase them.

While that formula will always hold true, ecommerce is undergoing some big changes, and web designers need to be prepared to keep up with them. This monthly ecommerce trends roundup will explore these new and evolving design, sales, and marketing trends.

1. Calmer Color Palettes

Although we’re not likely to see this trend go near the sites for big box stores, it’s something smaller ecommerce companies are adopting. And with good reason.

As consumers become wary about how much money they’re spending, they don’t need to feel pressured or rushed into a purchase. And ecommerce sites that employ calmer color palettes — like pastels and earth tones — will do a better job of putting their customers at ease.

Bicycle saddle manufacture Brooks England shows how this trend plays out in ecommerce design:

It’s not just outdoors or sporting goods companies that can use more natural-looking colors, either. CBD product vendor Cannaray is another company that uses a more subdued color palette:

Really, any store that wants to do a better job creating satisfying experiences for customers and gaining their long-time loyalty should consider toning things down with color.

2. No-rush Shipping Rewards

For years, we’ve seen consumers go crazy for brands that offer free and fast shipping. But thanks to the surge in online shopping in 2020, ecommerce companies, their shipping partners, and delivery service providers just haven’t been able to keep up with the pace.

When customers are unhappy with slow deliveries, they’re going to go to social media and review sites to bombard brands with complaints, as has been happening with Loft since November:

Although many ecommerce stores still don’t inform customers ahead of time about these delays, we’re starting to see a new checkout trend.

Here’s how Gap is encouraging and rewarding customers for choosing no-rush shipping:

Amazon is another ecommerce site that encourages no-rush shipping at checkout with a reward:

Not only does this set better expectations for customers before they finish their purchases, but it encourages everyone to slow down a bit so that ecommerce companies and their shipping/delivery partners can keep up.

3. More Human and Empathetic Assistance

Each year, design trend roundups suggest that AI will play a greater role in web design.

While that may be true for things like the search bar or personalized recommendations, ecommerce sites are pulling back the reins on automated support and assistance.

Best Buy, for instance, offers customers the option to “Shop with an Expert”:

After shoppers go through a quick survey, they’re given a variety of options — based on their own level of comfort and convenience — to work with the expert:

Something that might’ve been left in the hands of a self-service quiz or automated chatbot is being given the human touch once more.

We’re seeing a similar trend with retailers like Warby Parker. While it still offers a virtual AR try-on, the main navigation actually emphasizes the home try-on option:

Again, this is another example of ecommerce companies becoming less reliant on automated support to give their customers a better and more confident shopping experience.

Wrap-Up

Ecommerce trends are always evolving. Sometimes it’s due to new technologies. Other times it has to do with what’s happening in the world around us. And sometimes it’s simply to keep up with changing consumer expectations.

Stay tuned as we explore new and emerging ecommerce trends in the coming months…

Source

The post What’s New in Ecommerce, January 2021 first appeared on Webdesigner Depot.

Categories: Designing, Others Tags:

Fixing Smooth Scrolling with Find-on-Page

January 12th, 2021 No comments

Back when we released the v17 design (we’re on v18 now) of this site. I added html { scroll-behavior: smooth; } to the CSS. Right away, I got comments like this (just one example):

… when you control+f or command+f and search on CSS-Tricks, it’ll scroll very slowly instead of snapping to the result, which makes finding information and keywords on CSS-Tricks much slower. As someone who uses this shortcut frequently, this is a usability issue for me.

Not terribly long after, I just removed it. I didn’t feel that strongly about it, and the fact that you have almost zero control over it, made me just can the idea.

I see it come up as a “CSS tip” a lot, so I chimed in with my experience:

Anecdotal thing: when I had this on @CSS, I had SO MANY reports of people annoyed that when they did “find on page” and ???? through the results, the smooth scrolling was slow and annoying. Unfortunately, you can’t control the speed or when it happens. https://t.co/HAio46bYQt

— Chris Coyier (@chriscoyier) January 5, 2021

After mentioning that, Christian Schaefer chimed in with a great idea:

You could try fix it with

html:focus-within {
scroll-behavior: smooth;
}

— Christian Schaefer (@derSchepp) January 5, 2021

Love that!

Christian blogged it:

Smooth scrolling is consequently applied to everything. Always. Even when cycling through the browser’s page search results. At least that’s the case for Chromium. So for the page search it would be desirable for the browser to make an exception to that rule and to deactivate smooth scrolling. Until the Chromium team fixes it, here is a trick how to solve the problem on your own with a little bit of extra CSS and HTML.

I’m not sure if Chrome (or any other browser) would consider that a bug or not. I doubt it’s specced since find-on-page isn’t really a web technology feature. But anyway, I much prefer find-on-page without it.

html:focus-within {
  scroll-behavior: smooth;
}

It mostly works. The bummer part about it is situations like this…

<a href="#link-down-the-page">Jump down</a>

...

<h2 id="link-down-the-page">Header</h2>

That will jump the page down. With scroll-behavior: smooth; in place, that’s kinda nice. But

is typically not a “focusable” element. So, with the trick above, there is now no focus within anymore, and the smooth scrolling is lost. If you want to preserve that, you’d have to do:

<h2 tabindex="-1" id="link-down-the-page">Header</h2>

The post Fixing Smooth Scrolling with Find-on-Page appeared first on CSS-Tricks.

You can support CSS-Tricks by being an MVP Supporter.

Categories: Designing, Others Tags:

WordPress.com Business Plan (Business-Class WordPress Hosting + Support from WordPress Experts)

January 12th, 2021 No comments

WordPress.com is where you go to use WordPress that is completely hosted for you. You don’t have to worry about anything but building your site. There is a free plan to get started with, and paid plans that offer more features. The Business plan is particularly interesting, and my guess is that most people don’t fully understand everything that it unlocks for you, so let’s dig into that.

You get straight up SFTP access to your site.

Here’s me using Transmit to pop right into one of my sites over SFTP.

What this means is that you can do local WordPress development like you normally would, then use real deployment tools to kick your work out to production (which is your WordPress.com site). That’s what I do with Buddy. (Here a screencast demonstrating the workflow.)

That means real control.

I can upload and use whatever plugins I want. I can upload and use whatever themes I want. The database too — I get literal direct MySQL access.

I can even manage what PHP version the site uses. That’s not something I’d normally even need to do, but that’s just how much access there is.

A big jump in storage.

200 GB. You’ll probably never get anywhere near that limit, unless you are uploading video, and if you are, now you’ve got the space to do it.

Backups you’ll probably actually use.

You don’t have to worry about anything nasty happening on WordPress.com, like your server being hacked and losing all your data or anything. So in that sense, WordPress.com is handling your backups for you. But with the Business plan, you’ll see a backup log right in your dashboard:

That’s a backup of your theme, data, assets… everything. You can download it anytime you like.

The clutch feature? You can restore things to any point in time with the click of a button.

Powered by a global CDN

Not every site on WordPress.com is upgraded to the global CDN. Yours will be if it’s on the Business plan. That means speed, and speed is important for every reason, including SEO. And speaking of SEO tools, those are unlocked for you on the Business plan as well.

Some of the best themes unlock at the Premium/Business plan level.

You can buy them one-off, but you don’t have to if you’re on the Business plan because it opens the door for more playing around. This Aquene theme is pretty stylish with a high-end design:

It’s only $300/year.

(Or $33/month billed monthly.)

So it’s not ultra-budget hosting, but the price tag is a lot less if you consider all the things we covered here and how much they cost if you were to cobble something together yourself. And we didn’t even talk about support, which is baked right into the plan.

Hosting, backups, monitoring, performance, security, plugins, themes, and support — toss in a free year or domain registration, and that’s a lot of website for $300.

They have less expensive plans as well. But the Business plan is the level where serious control, speed, and security kick in.

Coupon code CSSTRICKS gets you 15% off the $300/year Business Plan. Valid until the end of February 2021.


The post WordPress.com Business Plan (Business-Class WordPress Hosting + Support from WordPress Experts) appeared first on CSS-Tricks.

You can support CSS-Tricks by being an MVP Supporter.

Categories: Designing, Others Tags:

I Just Wanna Make Sure You Understand the WordPress.com Business Plan

January 12th, 2021 No comments

WordPress.com is where you go to use WordPress that is completely hosted for you. You don’t have to worry about anything but building your site. There is a free plan to get started with, and paid plans that offer more features. The Business plan is particularly interesting, and my guess is that most people don’t fully understand everything that it unlocks for you, so let’s dig into that.

You get straight up SFTP access to your site.

Here’s me using Transmit to pop right into one of my sites over SFTP.

What this means is that you can do local WordPress development like you normally would, then use real deployment tools to kick your work out to production (which is your WordPress.com site). That’s what I do with Buddy. (Here a screencast demonstrating the workflow.)

That means real control.

I can upload and use whatever plugins I want. I can upload and use whatever themes I want. The database too — I get literal direct MySQL access.

I can even manage what PHP version the site uses. That’s not something I’d normally even need to do, but that’s just how much access there is.

A big jump in storage.

200 GB. You’ll probably never get anywhere near that limit, unless you are uploading video, and if you are, now you’ve got the space to do it.

Backups you’ll probably actually use.

You don’t have to worry about anything nasty happening on WordPress.com, like your server being hacked and losing all your data or anything. So in that sense, WordPress.com is handling your backups for you. But with the Business plan, you’ll see a backup log right in your dashboard:

That’s a backup of your theme, data, assets… everything. You can download it anytime you like.

The clutch feature? You can restore things to any point in time with the click of a button.

Powered by a global CDN

Not every site on WordPress.com is upgraded to the global CDN. Yours will be if it’s on the Business plan. That means speed, and speed is important for every reason, including SEO. And speaking of SEO tools, those are unlocked for you on the Business plan as well.

Some of the best themes unlock at the Premium/Business plan level.

You can buy them one-off, but you don’t have to if you’re on the Business plan because it opens the door for more playing around. This Aquene theme is pretty stylish with a high-end design:

It’s only $300/year.

So it’s not ultra-budget hosting, but the price tag is a lot less if you consider all the things we covered here and how much they cost if you were to cobble something together yourself. And we didn’t even talk about support, which is baked right into the plan.

Hosting, backups, monitoring, performance, security, plugins, themes, and support — toss in a free year or domain registration, and that’s a lot of website for $300.

They have less expensive plans as well. But the Business plan is the level where serious control, speed, and security kick in.


The post I Just Wanna Make Sure You Understand the WordPress.com Business Plan appeared first on CSS-Tricks.

You can support CSS-Tricks by being an MVP Supporter.

Categories: Designing, Others Tags:

How to Add Commas Between a List of Items Dynamically with CSS

January 12th, 2021 No comments

Imagine you have a list of items. Say, fruit: Banana, Apple, Orange, Pear, Nectarine

We could put those commas (,) in the HTML, but let’s look at how we could do that in CSS instead, giving us an extra level of control. We’ll make sure that last item doesn’t have a comma while we’re at it.

I needed this for a real project recently, and part of the requirements were that any of the items in the list could be hidden/revealed via JavaScript. The commas needed to work correctly no matter which items were currently shown.

One solution I found rather elegant solution is using general sibling combinator. We’ll get to that in a minute. Let’s start with some example HTML. Say you start out with a list of fruits:

<ul class="fruits">
  <li class="fruit on">Banana</li>
  <li class="fruit on">Apple</li>
  <li class="fruit on">Orange</li>
  <li class="fruit on">Pear</li>
  <li class="fruit on">Nectarine</li>
</ul>

And some basic CSS to make them appear in a list:

.fruits {
  display: flex;
  padding-inline-start: 0;
  list-style: none;
}

.fruit {
  display: none; /* hidden by default */
} 
.fruit.on { /* JavaScript-added class to reveal list items */
  display: inline-block;
}

Now say things happen inside this interface, like a user toggles controls that filter out all fruits that grow in cold climates. Now a different set of fruits is shown, so the fruit.on class is manipulated with the classList API.

So far, our HTML and CSS would create a list like this:

BananaOrangeNectarine

Now we can reach for that general sibling combinator to apply a comma-and-space between any two on elements:

.fruit.on ~ .fruit.on::before {
  content: ', '; 
}

Nice!

You might be thinking: why not just apply commas to all the list items and remove it from the last with something like :last-child or :last-of-type. The trouble with that is the last child might be “off” at any given time. So what we really want is the last item that is “on,” which isn’t easily possible in CSS, since there is nothing like “last of class” available. Hence, the general sibling combinator trick!

In the UI, I used max-width instead of display and toggled that between 0 and a reasonable maximum value so that I could use transitions to push items on and off more naturally, making it easier for the user to see which items are being added or removed from the list. You can add the same effect to the pseudo-element as well to make it super smooth.

Here’s a demo with a couple of examples that are both slight variations. The fruits example uses a hidden class instead of on, and the veggies example has the animations. SCSS is also used here for the nesting:

CodePen Embed Fallback

I hope this helps others looking for something similar!


The post How to Add Commas Between a List of Items Dynamically with CSS appeared first on CSS-Tricks.

You can support CSS-Tricks by being an MVP Supporter.

Categories: Designing, Others Tags:

Building Flexible Components With Transparency

January 12th, 2021 No comments

Good thinking from Paul Herbert on the Cloudfour blog about colorizing a component. You might look at a design comp and see a card component with a header background of #dddddd, content background of #ffffff, on an overall background of #eeeeee. OK, easy enough. But what if the overall background becomes #dddddd? Now your header looks lost within it.

That darker header? Design-wise, it’s not being exactly #dddddd that’s important; it’s about looking slightly darker than the background. When that’s the case, a background of, say rgba(0, 0, 0, 0.135) is more resiliant.

That will then remain resilient against backgrounds of any kind.

CodePen Embed Fallback

Direct Link to ArticlePermalink


The post Building Flexible Components With Transparency appeared first on CSS-Tricks.

You can support CSS-Tricks by being an MVP Supporter.

Categories: Designing, Others Tags:

Is Burger King Rebrand a Taste of the Future?

January 12th, 2021 No comments

Burger King, the globally recognized food chain with 19,000 restaurants worldwide, has unveiled a redesigned set of brand assets.

Since the late 1960s, the company has used a logotype sandwiched between two buns. In 1999 the design was updated to add a blue swoosh and some plastic highlights to the bun; Jones Knowles Ritchie’s new design reverts to the classic 1969 approach, with some modern refinements.

Left: The 1999 design, Right: JKR’s redesign

The lettering has been plumped up and resized, giving the impression of a sandwich bursting with filling. The sports-bar primary colors have been replaced with a warm, nostalgic, red and orange combination.

Alongside the logo, macro photography has been introduced to focus on food, and 70s-style illustration has been designed to allow for more creative storytelling. There’s a delicious custom typeface called Flame Sans designed to mimic the organic shape of food.

The rebrand is distinctly retro Americana, reminiscent of the work of Milton Glaser.

Design is one of the most essential tools we have for communicating who we are and what we value

— Raphael Abreu, head of design at Burger King owner Restaurant Brands International

With the trauma of recent events, it’s unsurprising that brands seek to transport us to a time that, with the benefit of rose-tinted spectacles, was simpler and more welcoming.

Burger King’s branding will take several years to roll out worldwide, by which time the style could be a popular trend.

Source

The post Is Burger King Rebrand a Taste of the Future? first appeared on Webdesigner Depot.

Categories: Designing, Others Tags:

Good old days? Think again: 65 Best and Worst Vintage Advertisement Examples That Will Both Inspire and Annoy You

January 12th, 2021 No comments
coca cola Vintage advertisement

Ever wondered what was the first advertisements all about and how did it all begin? It all goes back to the 16th and 17th centuries when the first newspapers and magazines were published.

The printed advertisements for books and medicines represented the earliest forms of vintage advertisements featured in simple newspaper listings. Since then modern advertising began to take its final form embracing technology and new innovative ways.

We live in a world that revolves around marketing. How you present your brand, product or service is a big deal when it comes to impressing buyers. Being able to offer an incentive that your audience can’t resist and your competitors can’t manage to achieve is a promise that’s hard to go overlooked. Since the only means of reaching customers is advertising, a careful combination of an effective advertising strategy, being able to convey a valuable message, and being visually appealing is what drives considerable business results.

time-lapse photography of crowd of people on New York Time square during night time
Credit: Joe Yates

Your product or service may be the best in the market yet that doesn’t mean much if nobody knows about it. That is why you need to find a way to build a connection with your potential customers in order to create awareness for your product or service and to increase your sales.

There is no question that advertising is the most potent determinant that has the ability to shape consumer behaviors and tendencies but was it always in the form we get exposed to today? Of course not. The components and characteristics of vintage advertisements were quite different and also bizarre compared to today’s modern Superbowl ads.

super bowl ads
Photo via Mountain Dew/YouTube

Vintage advertisements were colorful, catchy, yet sometimes offensive and sexist. They are also known for promoting unhealthy habits like smoking by featuring babies in cigarette ads and incentivizing drinking sodas as early as possible, we’re talking about infants sipping Coca-Cola and 7 Up. Other striking signature components of vintage advertisements are having very long, storylike copies, funny slogans, large, bold headlines, and bright colors.

Sure, the clothes and hairstyles were nice and people looked cooler in vintage ads but they were also sexist, racist, and offensive. That is why we’ve handpicked an interesting collection of vintage advertisement examples that worked on our grandparents. It’s true that now we live in a world where you can’t say anything without someone getting offended. But we must warn you, some of these ads are nothing like that. Get ready to see some absurdly offensive ads that you won’t believe were real.

Best and Worst Vintage Advertisement Examples

vintage vespa advertisement
Photo Credit: Design Modo
vintage shoe ad
Source: Bored Panda
vintage camel ad
Source: Bored Panda
vintage ketchup advertisement
Photo Credit: Vintagraph
hersheys.cocoa advertisement
Photo Credit: Design Modo
Buy Your Apples by the Case vintage advertisement
Photo Credit: Vintagraph
vintage canada dry advertisement
Photo Credit: Design Modo
vintage chlorodent advertisement
Source: Pinterest
vintage nail polish advertisement
Photo Credit: Design Modo
vintage Georges DOLA La Chauve-Souris poster
Photo Credit: Galerie bei der Oper
vintage fun center advertisement
Source: Pinterest
Binaca Toothpaste advertising poster
Photo Credit: Vintagraph
vintage rowntree's fruit gums advertisement
Photo Credit: Design Modo
vintage amolin advertisement
Source: Pinterest
vintage lucky start cigarette advertisement
Photo Credit: Design Modo
Ted Williams Coca-Cola Advertising Poster
Photo Credit: Rockhurst Auctions
vintage rinso advertisement
Photo Credit: Design Modo
vintage deese advertisement
Photo Credit: Vintagraph
vintage marlboro advertisement
Source: Pinterest
vintage seameal dessert advertisement
Photo Credit: Vintagraph
vintage pontiac advertisement
Photo Credit: Design Modo
vintage chlorinol advertisement
Source: Pinterest
coca cola vintage advertisement
Photo Credit: Vintagraph
vintage Grant's advertisement
Source: Pinterest
vintage electrolux advertisement
Photo Credit: Design Modo
vintage Wilson's Maltexo advertisement
Photo Credit: Vintagraph
vintage Mr. Leggs advertisement
Source: Pinterest
vintage coca cola advertisement
Photo Credit: Design Modo
vintage vaking powder advertisement
Photo Credit: Vintagraph
vintage femicin advertisement
Source: Pinterest
vintage Budweiser advertisement
Photo Credit: Design Modo
Nicolas: Nectar and Glou-Glou poster
Photo Credit: Vintagraph
vintage advertisement in construction news
Source: Pinterest
vintage coke advertisement with santa and kids
Photo Credit: Design Modo
vintage shopping for shoes  advertisement
Photo Credit: Vintagraph
 vintage advertisement
Photo Credit: Design Modo
vintage Bellardi Vermouth  advertisement
Photo Credit: Vintagraph
vintage 7up  advertisement
Photo Credit: Design Modo
vintage Charcuterie on a Board  advertisement
Photo Credit: Vintagraph
vintage Knorrox brand bouillon print  advertisement
Photo Credit: Vintagraph
vintage Campbell's  advertisement
Photo Credit: Design Modo
vintage pears' soap  advertisement
Photo Credit: Understanding Slavery
vintage Café, Rio de Janeiro  advertisement
Photo Credit: Vintagraph
vintage budweiser  advertisement 2
Photo Credit: Design Modo
vintage B. Kupfer & Co. Compressed Yeast advertisement
Photo Credit: Vintagraph
vintage hoover vacuum  advertisement
Source: Pinterest
Contre-Douleurs Vintage Advertisement
Photo Credit: Vintagraph
vintage colgate advertisement
Source: Pinterest
Vintage Bata Boots advertisement
Photo Credit: Vintagraph
vintage Geroba cold remedies poster
Photo Credit: Vintagraph
vintage coca cola advertisement
Source: Pinterest
vintage advertisement
Source: Pinterest
vintage Chocolat Klaus  advertisement
Photo Credit: Vintagraph
vintage sega advertisement
Source: Spectacled Marketer
vintage Van Houten's Cocoa print  advertisement
Photo Credit: Vintagraph
vintage Mum advertisement
Source: Pinterest
vintage The Horseshoe English and American Bar advertisement
Photo Credit: Vintagraph
vintage honda advertisement
Photo Credit: Design Modo
vintage Chubbettes advertisement
Source: Pinterest
Drummond Natural Leaf Smoking Tobacco
Photo Credit: Vintagraph
vintage shampoo advertisement
Source: Pinterest
Rayon d'Or Advertisement
Photo Credit: Vintagraph
vintage tea advertisement
Source: Spectacled Marketer
vintage chevrolet advertisement
Photo Credit: Design Modo
vintage delta advertisement
Source: Pinterest
vintage career club advertisement
Photo Credit: Design Modo

Techniques and strategies used in the advertising industry came a long way since the 17th-century and advertisements underwent a noticeable evolution over the years. Even though advertising approaches have refined in the digital age, consumers still expect the same sentiments from advertisements today. While their audience craves a sense of emotional connection, and trust, advertisers are trying to build this connection by using vintage advertisement elements. Apart from some controversial and offensive examples, vintage advertisements managed to draw consumers in with techniques that are still useful today. In spite of negative connotations, there is still a lot modern advertisers can learn from vintage advertisements of the past.

These vintage advertisement examples gave us one good resource for design inspiration by setting out the basics of successful visual design. Some simply evoked our curiosity by being politically incorrect, weird, and shockingly offensive; whereas some were just interesting to look at and visually appealing.

Tell us in the comment section your favorite one and the ones that annoyed you the most. Share your opinion on why you think a brand would present itself in such offensive ways, why advertisers think that these would be successful and why buyers fell for them in the first place.

Categories: Others Tags: