Chat UI - WIP

Developer
Size
7,858 Kb
Views
38,456

How do I make an chat ui - wip?

Remake of http://dribbble.com/shots/1126535-Chat-UI for the first challenge on http://tlk.io/codepen. . What is a chat ui - wip? How do you make a chat ui - wip? This script and codes were developed by Kevin Gimbel on 11 August 2022, Thursday.

Chat UI - WIP Previews

Chat UI - WIP - Script Codes HTML Codes

<!DOCTYPE html>
<html >
<head> <meta charset="UTF-8"> <title>Chat UI - WIP</title> <link rel="stylesheet" href="http://yui.yahooapis.com/pure/0.2.0/grids-min.css"> <style> /* NOTE: The styles were added inline because Prefixfree needs access to your styles and they must be inlined if they are on local disk! */ @import url(http://weloveiconfonts.com/api/?family=entypo);
/* entypo */
[class*="entypo-"]:before { font-family: 'entypo', sans-serif;
}
* { padding: 0; margin: 0; position: relative; -moz-box-sizing: border-box; -webkit-box-sizing: border-box; box-sizing: border-box;
}
:root { font-size: 1em;
}
a { color: white; text-decoration: none;
}
body { font-family: Arial, Helvetica, sans-serif; background: url('data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0idXRmLTgiPz4gPHN2ZyB2ZXJzaW9uPSIxLjEiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+PGRlZnM+PHJhZGlhbEdyYWRpZW50IGlkPSJncmFkIiBncmFkaWVudFVuaXRzPSJ1c2VyU3BhY2VPblVzZSIgY3g9IjUwJSIgY3k9IiIgcj0iMTAwJSI+PHN0b3Agb2Zmc2V0PSIwJSIgc3RvcC1jb2xvcj0iI2YwZjNmMyIvPjxzdG9wIG9mZnNldD0iMTAwJSIgc3RvcC1jb2xvcj0iI2UxZTJlNCIvPjwvcmFkaWFsR3JhZGllbnQ+PC9kZWZzPjxyZWN0IHg9IjAiIHk9IjAiIHdpZHRoPSIxMDAlIiBoZWlnaHQ9IjEwMCUiIGZpbGw9InVybCgjZ3JhZCkiIC8+PC9zdmc+IA=='); background: -moz-radial-gradient(center, #f0f3f3, #e1e2e4); background: -webkit-radial-gradient(center, #f0f3f3, #e1e2e4); background: radial-gradient(center, #f0f3f3, #e1e2e4);
}
/* FIXES
*/
.fixes { width: 400px; height: auto; padding: .5em; margin: 1em auto; background: white; -moz-box-shadow: 0 0 2px rgba(0, 0, 0, 0.4); -webkit-box-shadow: 0 0 2px rgba(0, 0, 0, 0.4); box-shadow: 0 0 2px rgba(0, 0, 0, 0.4); -moz-border-radius: 3px; -webkit-border-radius: 3px; border-radius: 3px;
}
.chat__container { width: 300px; height: auto; min-height: 500px; margin: 20px auto; border: 1px solid rgba(0, 0, 0, 0.4); box-shadow: 0 0 20px rgba(0, 0, 0, 0.8); overflow: hidden;
}
.chat__header { width: 298px; height: auto; background: #2F2C33; color: white;
}
.menu__trigger { background: #161418; width: 50px; height: 100%; padding-left: 5px;
}
.menu__trigger--icon { font-size: 3em;
}
.chat__title { text-align: right; height: 100%; padding: 15px;
}
.ui--avatar-rounded, .chat__preview--avatar, .chat__chat--avatar { border-radius: 100%;
}
.btn--new-message { width: 298px; height: auto; color: white; padding: 30px 70px 20px 70px; background: linear-gradient(#46c9ab, #3ec9a9);
}
.btn--new-message span { margin-right: 15px;
}
.chat__preview { margin: 10px 0; padding: 10px;
}
.chat__preview:nth-child(odd) { background: #f3f3f3;
}
.chat__preview--avatar-area { padding: 0 10px 0 0;
}
.chat__preview--avatar { width: 100%; max-width: 100px;
}
.chat__preview--user-name { color: #2F2C33;
}
.chat__preview--message-status { width: 10px; height: 10px; border-radius: 100%; background: #E1E2E4; display: inline-block; margin-left: 10px;
}
.status--new-message { background: #46C9AB;
}
.chat__preview--message-excerpt { font-size: 0.95em; color: #BDC1C6; width: 85%;
}
.chat__preview--time { font-size: 0.9em; color: #E1E2E4;
}
.chat__preview--open-trigger { height: 20px; position: absolute; right: 10px; top: 50%; margin-top: -10px; font-weight: bold; color: #E1E2E4;
}
.chat__big-container { width: 600px;
}
.chat__chat-window { width: 300px; height: 420px; padding: 10px; background: #E1E2E4; position: absolute; top: 0px; left: 300px;
}
.chat__single--message { margin: 20px 0;
}
.chat__chat--bubble { width: 100%; height: auto; padding: 10px 20px; border-radius: 3px; -webkit-filter: drop-shadow(0 2px 0 rgba(0, 0, 0, 0.1)); filter: drop-shadow(0 2px 0 rgba(0, 0, 0, 0.1)); background: white;
}
.chat__chat--bubble-arrow { width: 0; height: 0; border-bottom: 10px solid transparent; border-left: 10px solid white; border-top: 10px solid transparent; position: absolute; right: -10px; top: 10%;
}
.chat__chat--bubble-arrow-user { width: 0; height: 0; border-bottom: 10px solid transparent; border-right: 10px solid white; border-top: 10px solid transparent; position: absolute; left: -10px; top: 10%;
}
.chat__chat--bubble-time { color: #E1E2E4; font-size: 0.8em;
}
.chat__chat--avatar { width: 100%; max-width: 50px;
}
.chat__sender-avatar-space { margin-left: 20px;
}
.chat__user-avatar-space { margin-right: 20px;
}
.chat__btn--media-upload { background: #26ADE4; width: 65px; height: 65px; padding: 20px 20px 26px 20px;
}
.chat__btn--media-upload span { position: absolute; top: 25px; left: 25px; color: white;
}
.chat__message-input input { width: 100%; height: 100%; padding: 25px; border: none; outline: none;
}
.clickable:hover { cursor: pointer;
} </style> <script src="https://cdnjs.cloudflare.com/ajax/libs/prefixfree/1.0.7/prefixfree.min.js"></script>
</head>
<body> <main class="chat__container"> <header class="chat__header pure-g"> <div class="pure-u-1-2"> <div class="menu__trigger"> <a href="javascript:void(0);" id="close-chat-window"> <span class="menu__trigger--icon entypo-menu"></span> </a> </div> </div> <div class="pure-u-1-2"> <div class="chat__title"> <h3>Chats</h3> </div> </div> </header> <section class="pure-g chat__big-container"> <section class="chat__content pure-u-1-2" id="chat-home"> <div class="btn--new-message"> <span class="entypo-feather"></span> New Message </div> <article class="chat__preview pure-g clickable" id="chat-preview" data-chatnum="1"> <aside class="chat__preview--avatar-area pure-u-1-3"> <img class="chat__preview--avatar" src="http://img.kevingimbel.de/guy-manuel.png" alt="" /> </aside> <div class="pure-u-2-3"> <h1 class="chat__preview--user-name">Guy-Manuel de Homem-Christo <span class="chat__preview--message-status status--new-message"></span> </h1> <p class="chat__preview--message-excerpt"> Hey! I made this new tune, you shou... </p> <time class="chat__preview--time"> <span class="entypo-clock"> 2 minutes ago</span> </time> <div class="chat__preview--open-trigger"> <span class="entypo-right-open-big"></span> </div> </div> </article> <!-- end of single chat preview --> <article class="chat__preview pure-g clickable" id="chat-preview" data-chatnum="2"> <aside class="chat__preview--avatar-area pure-u-1-3"> <img class="chat__preview--avatar" src="http://img.kevingimbel.de/max.png" alt="" /> </aside> <div class="pure-u-2-3"> <h1 class="chat__preview--user-name">Max Boll <span class="chat__preview--message-status"></span> </h1> <p class="chat__preview--message-excerpt"> Hey man, have you seen my latest upd... </p> <time class="chat__preview--time"> <span class="entypo-clock"> 8 hours ago</span> </time> <div class="chat__preview--open-trigger"> <span class="entypo-right-open-big"></span> </div> </div> </article> <!-- end of single chat preview --> <article class="chat__preview pure-g clickable" id="chat-preview" data-chatnum="3"> <aside class="chat__preview--avatar-area pure-u-1-3"> <img class="chat__preview--avatar" src="http://img.kevingimbel.de/faye-reagan.png" alt="" /> </aside> <div class="pure-u-2-3"> <h1 class="chat__preview--user-name">Faye Reagan <span class="chat__preview--message-status"></span> </h1> <p class="chat__preview--message-excerpt"> It was such fun, we need to work together again soon! </p> <time class="chat__preview--time"> <span class="entypo-clock"> 3 days ago</span> </time> <div class="chat__preview--open-trigger"> <span class="entypo-right-open-big"></span> </div> </div> </article> <!-- end of single chat preview --> </section> <!-- chat__preview pure-u-1-2 --> <section class="chat__chat-window pure-u-1-2" id="chat-window" data-chatnum="1"> <div class="pure-g chat__single--message"> <div class="pure-u-3-4"> <div class="chat__chat--bubble"> What's up? Down tonight at the show? <div class="chat__chat--bubble-arrow"></div> <div class="chat__chat--bubble-time"> <span class="entypo-clock"></span> 6 days ago </div> </div> <!-- end of single chat bubble --> </div> <!-- pure-2-3 --> <div class="pure-u-1-4"> <aside class="chat__chat-window--avatar chat__sender-avatar-space"> <img src="http://img.kevingimbel.de/guy-manuel.png" class="chat__chat--avatar"/> </aside> </div> <!-- pure-u-1-3 --> </div><!-- end of single chat grid --> <div class="pure-g chat__single--message"> <div class="pure-u-1-4"> <aside class="chat__chat-window--avatar chat__user-avatar-space"> <img src="http://img.kevingimbel.de/kevin.png" class="chat__chat--avatar"/> </aside> </div> <!-- pure-u-1-3 --> <div class="pure-u-3-4"> <div class="chat__chat--bubble"> Sure thing! Going to see you backstage. <div class="chat__chat--bubble-arrow-user"></div> <div class="chat__chat--bubble-time"> <span class="entypo-clock"></span> 6 days ago </div> </div> <!-- end of single chat bubble --> </div> <!-- pure-2-3 --> </div><!-- end of single chat grid --> <div class="pure-g chat__single--message"> <div class="pure-u-3-4"> <div class="chat__chat--bubble"> Hey! I made this new tune, you should listen to it at SoundCloud! <div class="chat__chat--bubble-arrow"></div> <div class="chat__chat--bubble-time"> <span class="entypo-clock"></span> 2 minutes ago </div> </div> <!-- end of single chat bubble --> </div> <!-- pure-2-3 --> <div class="pure-u-1-4"> <aside class="chat__chat-window--avatar chat__sender-avatar-space"> <img src="http://img.kevingimbel.de/guy-manuel.png" class="chat__chat--avatar"/> </aside> </div> <!-- pure-u-1-3 --> </div><!-- end of single chat grid --> <div class="pure-g"> <div class="pure-u-3-4"> <div class="chat__message-input"> <input type="text" placeholder="Send a message..." /> </div> </div><!-- input field --> <div class="pure-u-1-4"> <div class="chat__btn--media-upload"> <span class="entypo-picture"></span> </div> </div> <!-- Media Upload Button --> </div> </section><!-- the chat windows --> <section class="chat__chat-window pure-u-1-2" id="chat-window" data-chatnum="3"> <div class="pure-g chat__single--message"> <div class="pure-u-3-4"> <div class="chat__chat--bubble"> Hey how are you? Going to be at the Conf today? <div class="chat__chat--bubble-arrow"></div> <div class="chat__chat--bubble-time"> <span class="entypo-clock"></span> 6 days ago </div> </div> <!-- end of single chat bubble --> </div> <!-- pure-2-3 --> <div class="pure-u-1-4"> <aside class="chat__chat-window--avatar chat__sender-avatar-space"> <img src="http://img.kevingimbel.de/faye-reagan.png" class="chat__chat--avatar"/> </aside> </div> <!-- pure-u-1-3 --> </div><!-- end of single chat grid --> <div class="pure-g chat__single--message"> <div class="pure-u-1-4"> <aside class="chat__chat-window--avatar chat__user-avatar-space"> <img src="http://img.kevingimbel.de/kevin.png" class="chat__chat--avatar"/> </aside> </div> <!-- pure-u-1-3 --> <div class="pure-u-3-4"> <div class="chat__chat--bubble"> Will be their at 2pm, wanna meet? <div class="chat__chat--bubble-arrow-user"></div> <div class="chat__chat--bubble-time"> <span class="entypo-clock"></span> 6 days ago </div> </div> <!-- end of single chat bubble --> </div> <!-- pure-2-3 --> </div><!-- end of single chat grid --> <div class="pure-g chat__single--message"> <div class="pure-u-3-4"> <div class="chat__chat--bubble"> It was such fun, we need to work together again soon! <div class="chat__chat--bubble-arrow"></div> <div class="chat__chat--bubble-time"> <span class="entypo-clock"></span> 2 minutes ago </div> </div> <!-- end of single chat bubble --> </div> <!-- pure-2-3 --> <div class="pure-u-1-4"> <aside class="chat__chat-window--avatar chat__sender-avatar-space"> <img src="http://img.kevingimbel.de/faye-reagan.png" class="chat__chat--avatar"/> </aside> </div> <!-- pure-u-1-3 --> </div><!-- end of single chat grid --> <div class="pure-g"> <div class="pure-u-3-4"> <div class="chat__message-input"> <input type="text" placeholder="Send a message..." /> </div> </div><!-- input field --> <div class="pure-u-1-4"> <div class="chat__btn--media-upload"> <span class="entypo-picture"></span> </div> </div> <!-- Media Upload Button --> </div> </section><!-- the chat windows -->
</section> <!-- pure-g -->
</main>
<div class="fixes"> <h4>There is still a lot to fix and get right.</h4> <p>Please notice that the look is kind of right but the UX is not finished. Thank you.</p>
</div> <script src='http://cdnjs.cloudflare.com/ajax/libs/jquery/2.1.3/jquery.min.js'></script> <script src="js/index.js"></script>
</body>
</html>

Chat UI - WIP - Script Codes CSS Codes

@import url(http://weloveiconfonts.com/api/?family=entypo);
/* entypo */
[class*="entypo-"]:before { font-family: 'entypo', sans-serif;
}
* { padding: 0; margin: 0; position: relative; -moz-box-sizing: border-box; -webkit-box-sizing: border-box; box-sizing: border-box;
}
:root { font-size: 1em;
}
a { color: white; text-decoration: none;
}
body { font-family: Arial, Helvetica, sans-serif; background: url('data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0idXRmLTgiPz4gPHN2ZyB2ZXJzaW9uPSIxLjEiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+PGRlZnM+PHJhZGlhbEdyYWRpZW50IGlkPSJncmFkIiBncmFkaWVudFVuaXRzPSJ1c2VyU3BhY2VPblVzZSIgY3g9IjUwJSIgY3k9IiIgcj0iMTAwJSI+PHN0b3Agb2Zmc2V0PSIwJSIgc3RvcC1jb2xvcj0iI2YwZjNmMyIvPjxzdG9wIG9mZnNldD0iMTAwJSIgc3RvcC1jb2xvcj0iI2UxZTJlNCIvPjwvcmFkaWFsR3JhZGllbnQ+PC9kZWZzPjxyZWN0IHg9IjAiIHk9IjAiIHdpZHRoPSIxMDAlIiBoZWlnaHQ9IjEwMCUiIGZpbGw9InVybCgjZ3JhZCkiIC8+PC9zdmc+IA=='); background: -moz-radial-gradient(center, #f0f3f3, #e1e2e4); background: -webkit-radial-gradient(center, #f0f3f3, #e1e2e4); background: radial-gradient(center, #f0f3f3, #e1e2e4);
}
/* FIXES
*/
.fixes { width: 400px; height: auto; padding: .5em; margin: 1em auto; background: white; -moz-box-shadow: 0 0 2px rgba(0, 0, 0, 0.4); -webkit-box-shadow: 0 0 2px rgba(0, 0, 0, 0.4); box-shadow: 0 0 2px rgba(0, 0, 0, 0.4); -moz-border-radius: 3px; -webkit-border-radius: 3px; border-radius: 3px;
}
.chat__container { width: 300px; height: auto; min-height: 500px; margin: 20px auto; border: 1px solid rgba(0, 0, 0, 0.4); box-shadow: 0 0 20px rgba(0, 0, 0, 0.8); overflow: hidden;
}
.chat__header { width: 298px; height: auto; background: #2F2C33; color: white;
}
.menu__trigger { background: #161418; width: 50px; height: 100%; padding-left: 5px;
}
.menu__trigger--icon { font-size: 3em;
}
.chat__title { text-align: right; height: 100%; padding: 15px;
}
.ui--avatar-rounded, .chat__preview--avatar, .chat__chat--avatar { border-radius: 100%;
}
.btn--new-message { width: 298px; height: auto; color: white; padding: 30px 70px 20px 70px; background: linear-gradient(#46c9ab, #3ec9a9);
}
.btn--new-message span { margin-right: 15px;
}
.chat__preview { margin: 10px 0; padding: 10px;
}
.chat__preview:nth-child(odd) { background: #f3f3f3;
}
.chat__preview--avatar-area { padding: 0 10px 0 0;
}
.chat__preview--avatar { width: 100%; max-width: 100px;
}
.chat__preview--user-name { color: #2F2C33;
}
.chat__preview--message-status { width: 10px; height: 10px; border-radius: 100%; background: #E1E2E4; display: inline-block; margin-left: 10px;
}
.status--new-message { background: #46C9AB;
}
.chat__preview--message-excerpt { font-size: 0.95em; color: #BDC1C6; width: 85%;
}
.chat__preview--time { font-size: 0.9em; color: #E1E2E4;
}
.chat__preview--open-trigger { height: 20px; position: absolute; right: 10px; top: 50%; margin-top: -10px; font-weight: bold; color: #E1E2E4;
}
.chat__big-container { width: 600px;
}
.chat__chat-window { width: 300px; height: 420px; padding: 10px; background: #E1E2E4; position: absolute; top: 0px; left: 300px;
}
.chat__single--message { margin: 20px 0;
}
.chat__chat--bubble { width: 100%; height: auto; padding: 10px 20px; border-radius: 3px; -webkit-filter: drop-shadow(0 2px 0 rgba(0, 0, 0, 0.1)); filter: drop-shadow(0 2px 0 rgba(0, 0, 0, 0.1)); background: white;
}
.chat__chat--bubble-arrow { width: 0; height: 0; border-bottom: 10px solid transparent; border-left: 10px solid white; border-top: 10px solid transparent; position: absolute; right: -10px; top: 10%;
}
.chat__chat--bubble-arrow-user { width: 0; height: 0; border-bottom: 10px solid transparent; border-right: 10px solid white; border-top: 10px solid transparent; position: absolute; left: -10px; top: 10%;
}
.chat__chat--bubble-time { color: #E1E2E4; font-size: 0.8em;
}
.chat__chat--avatar { width: 100%; max-width: 50px;
}
.chat__sender-avatar-space { margin-left: 20px;
}
.chat__user-avatar-space { margin-right: 20px;
}
.chat__btn--media-upload { background: #26ADE4; width: 65px; height: 65px; padding: 20px 20px 26px 20px;
}
.chat__btn--media-upload span { position: absolute; top: 25px; left: 25px; color: white;
}
.chat__message-input input { width: 100%; height: 100%; padding: 25px; border: none; outline: none;
}
.clickable:hover { cursor: pointer;
}

Chat UI - WIP - Script Codes JS Codes

/*
#chat-home
#chat-preview
#chat-window */
$(document).ready(function() { var state = true $('#chat-preview').click(function() { var chatnum = $(this).data("chatnum"); $('#chat-home, #chat-window[data-chatnum="' + chatnum + '"] ').animate({ left: state ? "-=300px" : "+=0px" },400); if(state === true) { state = false; } else { state = true; } }); $('#close-chat-window').click(function() { $('#chat-home').animate({left:'+=0px'}); $('#chat-window').animate({left:'+=300px'}); });
});
Chat UI - WIP - Script Codes
Chat UI - WIP - Script Codes
Home Page Home
Developer Kevin Gimbel
Username kevingimbel
Uploaded August 11, 2022
Rating 3.5
Size 7,858 Kb
Views 38,456
Do you need developer help for Chat UI - WIP?

Find the perfect freelance services for your business! Fiverr's mission is to change how the world works together. Fiverr connects businesses with freelancers offering digital services in 500+ categories. Find Developer!

Kevin Gimbel (kevingimbel) Script Codes
Create amazing marketing copy with AI!

Jasper is the AI Content Generator that helps you and your team break through creative blocks to create amazing, original content 10X faster. Discover all the ways the Jasper AI Content Platform can help streamline your creative workflows. Start For Free!