Victor Profile picture
13 Apr, 9 tweets, 5 min read
How to make this with CSS only 👇
1 / 8

First, you need an SVG that has TWO parts:

- Line
- Arrow

For drawing such curves you can use any vector editor. I used @sketch.

Tutorial on how to do this: sketch.com/docs/vector-ed…

Arrow is a simple triangle.
2 / 8

Next, after you exported SVG, you can go to jakearchibald.github.io/svgomg/ in order to remove clutter from the SVG.

Btw, this is a nice hint: you can significantly reduce the size of SVG by using this awesome tool from @jaffathecake
3 / 8

Now you have something similar to this.

1. Add classes to the line (path in my example) and triangle
2. Add fill-opacity="0" for triangle

In CSS the only thing you need so far is:

.path {
stroke-dasharray: 8;
}

That makes the line dashed.
4 / 8

Now, the trickest part.

In order to have an animated dashed line, you need to duplicate (!) the line path and make it a mask.

Check the code below.

Now we have:

1. Mask
2. Line
3. Triangle
5 / 8

The actual animation is done via changing the `stroke-dasharray` property.

Check it out: developer.mozilla.org/en-US/docs/Web…

But we will animate MASK, not the initial line path.
6 / 8

After the animation completed, we need to show the arrow (triangle).

For this purpose, we will change the `fill-opaicty` from zero to 100%.

Pay attention to animation-fill-mode, without this the triangle will disappear after the first animation attempt.
7 / 8

Now, a slight improvement can be done by changing the animation timing function from linear to something more aesthetical.

1. Go here easings.net
2. Select a proper timing function that you like
3. Update the mask animation property
8 / 8

The rest is making the background, adding the button, and all that boring stuff.

Completed example with code: codepen.io/akcium/pen/GRr…

!! Don't forget to change the layout in Codepen, since I used position absolute

• • •

Missing some Tweet in this thread? You can try to force a refresh
 

Keep Current with Victor

Victor Profile picture

Stay in touch and get notified when new unrolls are available from this author!

Read all threads

This Thread may be Removed Anytime!

PDF

Twitter may remove this content at anytime! Save it as PDF for later use!

Try unrolling a thread yourself!

how to unroll video
  1. Follow @ThreadReaderApp to mention us!

  2. From a Twitter thread mention us with a keyword "unroll"
@threadreaderapp unroll

Practice here first or read more on our help page!

More from @vponamariov

12 Apr
How to design almost any UI element.

A curated list of 58 articles 👇
Buttons.

7 Basic Rules for Button Design by @101babich
uxplanet.org/7-basic-rules-…

Button Design
uxdesign.cc/button-design-…

Cheatsheet for buttons by @TessGadd
uxdesign.cc/ui-cheat-sheet…
Text fields.

UI cheat sheet: text fields (Awesome article! 🤩)
uxdesign.cc/ui-cheat-sheet…

Text fields & Forms design — UI components series
uxdesign.cc/text-fields-fo…

The Anatomy of Input Field
uxplanet.org/the-anatomy-of…
Read 22 tweets
8 Mar
Consistency matters, they say...🤔

Starting from today, I'll post one UI tip per day for the next 50 days!

Follow this thread 👇

💡Tip #01 - Set the fixed width of your buttons if they have a loading state

Otherwise, they'll shrink when loading, and it looks terrible. Image
💡Tip #02 - Don't hide tips if it's unnecessary

Developers tend to hide tips under icons/tooltips/popups.

In this case, your users will be forced to hover every icon to read the tip.

It'd be better to show tips right away, if possible. 😊 Image
💡Tip #03 - Show progress bars for complex forms

They help users to identify which step they are on AND how many steps are left (!)

The latter will increase conversion of completing the form because of the "Goal Gradient Effect".

Further reading:

Image
Read 7 tweets
4 Mar
I sold Pingr.

One of the hardest tweets for me.

Lessons below 👇
Some stats

🔸Time spent: ~14 months
🔸Hours spent: ~1000
🔸Number of users: ~560
🔸Number of paying users: ~20
🔸Number of lifetime deals sold: ~20
🔸Total traffic: ~23K
🔸Revenue: negative
🔸Price: I cannot disclose the price, but it covered my development time fully
1 / Listen to others but make your own decisions. After I posted on Reddit, I decided to change my pricing model, but it turned out to be a mistake. I listened to others.

When a user asked me for something, I immediately started doing it.

Make your own decisions.
Read 14 tweets
2 Mar
I've been merciless 👿 when I was reviewing your designs.

Now it's time to look at good examples ☺️

Let's start with @PlausibleHQ

Here is my UI/UX review👇 Image
Look at how social proof should be done 🤩

🔸Real testimonials, no fake people
🔸Links to Twitter profiles
🔸The design look balanced
🔸Stats are not fake, which feels like the service is reliable and not making up things

Well done 💪 Image
Have a sign-up form?

Show me:

🔸Is there a free trial?
🔸Fields I should fill
🔸Possible constraints (e.g. password rules)
🔸What will be the next steps?
🔸Log in link, if I've already signed up Image
Read 4 tweets
16 Nov 20
Want to hack hacker news? 🔥

After I finally hit the frontend page, I gathered some insights into this thread.

Some are unique, I haven't heard of them before

Thread 👇 Image
1 / How many times you can post?

You can post multiple times, event with the same title. I've checked some account submissions.

It can be posted from different users, or the same user. Image
2 / Will they ban me if I post multiple times?

They won't. But if you post the same link often, you will be the only one who sees your submissions. Others won't see it.

So they have some kind of filtering mechanism here.
Read 21 tweets
15 Nov 20
Google, you are bad at UX.

Proofs below 👇
1 / Gmail

I've been using gmail for more than 10 years. And every time I want to load more emails, it takes time to find where the pagination buttons are.

Their placement is completely non-logical.
2 / Google developer console

I thought that I'm the only one who searches in google if I need to find something related to the google developer console.

Turned out that I'm not.

Almost impossible to find something there.
Read 10 tweets

Did Thread Reader help you today?

Support us! We are indie developers!


This site is made by just two indie developers on a laptop doing marketing, support and development! Read more about the story.

Become a Premium Member ($3/month or $30/year) and get exclusive features!

Become Premium

Too expensive? Make a small donation by buying us coffee ($5) or help with server cost ($10)

Donate via Paypal Become our Patreon

Thank you for your support!

Follow Us on Twitter!