一个简单漂亮的前端聊天界面

margin: 0 auto;

}

.chat_banner {

background: linear-gradient(to right, #a41adc, #ee1351, #a41adc); /* 标准的语法 */

width: 999px;

height: 50px;

border: 1px solid blue;

}

.chat_body {

width: 999px;

height: 546px;

border: 1px solid red;

}

.chat_online {

overflow: hidden;

float: left;

height: 546px;

width: 200px;

border: 1px solid yellow;

background-color: white;

}

.search_online {

text-indent: 2em;

height: 40px;

border: 1px solid black;

}

.search_online input[type=“text”] {

outline: none;

margin: 2px auto;

height: 30px;

width: 60%;

border-radius: 8px;

text-indent: 2em;

}

.online_friend ul li {

list-style-type: none;

}

.online_friend ul li {

height: 60px;

border-bottom: 1px solid #1c1f21;

margin-top: 10px;

}

.a_friend {

/border: 1px solid #2328ff;/

height: 55px;

background-color: #39fffe;

}

.head_portrait {

background-color: #b532ff;

margin: 6px 6px;

float: left;

height: 40px;

width: 40px;

border: 1px solid orangered;

border-radius: 50%;

}

.head_text {

padding: 3px;

font-size: 22px;

text-align: center;

vertical-align: center;

margin-top: 3px;

}

.friend {

float: right;

height: 54px;

width: 140px;

/border: 1px solid rebeccapurple;/

}

.friend .name {

margin: 4px 6px;

float: left;

}

.friend .this_time {

margin-top: 4px;

float: right;

}

.chat_main {

float: left;

width: 548px;

height: 546px;

border: 1px solid seagreen;

/background-color: white;/

background: url(“…/img/圣诞.jpg”) no-repeat;

background-size: cover;

}

.send_message {

width: 548px;

height: 65px;

position: absolute;

bottom: 0px;

background: linear-gradient(to top, rgba(9, 216, 237, 0.99), #72cad4);

}

.send_message input[type=“text”] {

width: 470px;

height: 30px;

margin-top: 16px;

margin-left: 10px;

border-radius: 10px 0 0 10px;

text-indent: 2em;

outline: none;

background-color: white;

border: none;

}

.send_message input[type=“button”] {

border-radius: 0 10px 10px 0;

width: 35px;

height: 30px;

background-color: white;

border: none;

margin-left: 0;

background-color: white;

border: none;

outline: none;

}

.send_message input[type=“button”]:hover {

background-color: orangered;

}

.send_message input[type=“button”]:active {

background-color: #879eee;

}

.chat_namecard {

float: left;

width: 245px;

height: 546px;

border: 1px solid saddlebrown;

background-color: #f1fea9;

}

.chat_content ul{

list-style-type: none;

}

.chat_content{

overflow: auto;

width: 540px;

/设置高度滚动条才有效/

height: 470px;

}

.chat_content li{

margin-top: 10px;

width: 540px;

clear: both;

display: block;

}

.chat_content li img{

margin: 6px 0 0 0;

}

.chat_content li span {

background: #ffd351;

padding: 10px;

border-radius: 10px;

/最大宽度不能太长,不然布局会混乱/

max-width: 400px;

border: 1px solid white;

box-shadow: 0 0 3px #879eee;

margin: 6px 10px 0 10px;

overflow: hidden;

}

.chat_content li img {

width: 40px;

height: 40px;

border-radius: 50%;

}

.chat_content li img.imgleft {

margin-left: 10px;

float: left;

}

.chat_content li img.imgright {

margin-right: 10px;

float: right;

}

.chat_content li span.spanleft {

float: left;

}

.chat_content li span.spanright {

float: right;

}

三.JS代码

window.onload = function () {

var user = [“…/img/img_17.jpg”];

var num = 1;//判断左右

var portrait_position = 0;

var now = -1;//左右浮动

var send_btn = document.getElementById(‘send_btn’);

var send_txt = document.getElementById(‘send_txt’);

var chat_ul = document.getElementById(‘chat_ul’);

var chat_span = chat_ul.getElementsByTagName(‘span’);

var chat_img = chat_ul.getElementsByTagName(‘img’);

send_btn.onclick = function () {

if (send_txt.value == ‘’) {

alert(“请不要惜字如金”);

} else {

chat_ul.innerHTML += ‘

  • ’ + send_txt.value + ‘’;
  • now++;

    if (num==0) {

    chat_span[now].className = ‘spanright’;

    chat_img[now].className = ‘imgright’;

    }

    else {

    真题解析、进阶学习笔记、最新讲解视频、实战项目源码、学习路线大纲
    详情关注公中号【编程进阶路】

    chat_span[now].className = ‘spanleft’;

    chat_img[now].className = ‘imgleft’;

    }

    send_txt.value = ‘’;

    // 内容过多时,将滚动条放置到最底端

    /contentcontent.scrollTop = content.scrollHeight;/

    }

    }

    框架相关

    原生JS虽能实现绝大部分功能,但要么就是过于繁琐,要么就是存在缺陷,故绝大多数开发者都会首选框架开发方案。现阶段较热门是React、Vue两大框架,两者工作原理上存在共通点,也存在一些不同点,对于校招来说,不需要两个框架都学得特别熟,一般面试官会针对你简历中写的框架进行提问。

    在框架方面,生命周期、钩子函数、虚拟DOM这些基本知识是必须要掌握的,在学习的过程可以结合框架的官方文档

    Vue框架

    知识要点:
    1. vue-cli工程
    2. vue核心知识点
    3. vue-router
    4. vuex
    5. http请求
    6. UI样式
    7. 常用功能
    8. MVVM设计模式

    React框架

    知识要点:
    1. 基本知识
    2. React 组件
    3. React Redux
    4. React 路由

    过于繁琐,要么就是存在缺陷,故绝大多数开发者都会首选框架开发方案。现阶段较热门是React、Vue两大框架,两者工作原理上存在共通点,也存在一些不同点,对于校招来说,不需要两个框架都学得特别熟,一般面试官会针对你简历中写的框架进行提问。

    在框架方面,生命周期、钩子函数、虚拟DOM这些基本知识是必须要掌握的,在学习的过程可以结合框架的官方文档

    Vue框架

    知识要点:
    1. vue-cli工程
    2. vue核心知识点
    3. vue-router
    4. vuex
    5. http请求
    6. UI样式
    7. 常用功能
    8. MVVM设计模式

    [外链图片转存中…(img-l7uwevLv-1720775226227)]

    React框架

    知识要点:
    1. 基本知识
    2. React 组件
    3. React Redux
    4. React 路由

    [外链图片转存中…(img-LxW4qs8e-1720775226229)]

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值