交互设计师需要懂前端吗?

用户头像
成都/UX设计师/5年前/483浏览
交互设计师需要懂前端吗?
用户头像
Circle_H

答案是需要!

一.背景

在中小型公司,遇到“善良”的BOOS的概率是挺大的。现在清楚记得那是2017年的中旬,初到公司的我和其他3个设计同事跟着产品经理去智慧南京中心出差,按设计圈标准的设计流程通宵达旦的干。老板来南京开会,看到我们在用Axue、sketch、photoshop做交互和界面后“龙颜大怒”,列出不会前端的N宗罪。




# 你们不懂前端的原理能做出好的设计?

# 不懂前端的知识如何和研发人员沟通,能有统一的沟通语言?

# 学前端知识对你们自己和对前端同事有什么好处?

# 阿里巴巴和国外的设计者都是设计+前端全栈知道吗?人家设计产出可以直接交付给后台开发。

(有阿里的小伙伴路过的请解惑,你们真这样吗?)

BOSS:“现在前端框架多的很,拿过来就开始用,有什么难的?别再让我看到你们用什么sketch、photoshop做设计了。在国外,那叫做painter!不是Designer”。你的一字一句犹如刀疤划心上~(好好说,怎么唱起来了)

BOOS让我们直接用BootStrap设计,别画图了。当时还没有前端的知识储备,直接上手BootStrap框架的我们是一脸懵逼。由于刚到公司,和前端小伙伴关系还没“决裂”,我们还是相亲相爱的一家人。我们的跪舔换来一次巧妙的度劫。

总不能每次都投机取巧吧?告诉自己,要站着把钱给挣了。所以,出差回成都马上找资料开始学前端。总结了几点经验给朋友们分享。



1.【动手敲代码,记学习笔记】


2.【要认识一个会前端的朋友】在学习过程中,会经常遇到些莫名其妙的问题。明明跟着一步一步做却不出效果,这很打击学习的信心的。不然入门到放弃可能就二三天的事。认识前端朋友可以在遇到问题时请教。


3.【转化关系观念】别把学习当任务。想着他日涨薪,迎娶白富美,走上人生巅峰。


4.【持久力】如果学两天放两天的话,很容易就把之前又给忘了。






二.学习目标


本章教程目标:塑造学习成就感。


大家跟着我教程走,一点一点地实现下方页面效果。完成的时候,不仅在自己电脑上能查看效果,也能发URl地址给其他同事来观察查看页面在不同尺寸的移动设备中的效果。


















注:本章教程不会讲HTML、CSS、JavaScript基础的知识。让大家在本章教程取得一定的成就感、提高学习兴趣后在下一章教程开始讲基础知识。


下一章教程开始,就用做各种app的各种小组件作为案例,带大家入门前端。这样的案例驱动教学没那么枯燥。


学习过程中有什么问题,欢迎加我微信 K-singer






三.编码




1.下载代码编辑器,下一步下一步安装即可。

下载地址:

https://www.dcloud.io/hbuilderx.html

注:选择对应自己电脑系统的APP开发版




2.打开代码编辑器,新建项目。

接着自动弹出填写项目属性的面板,设置如下:



3.展开刚才新建的项目

将下方百度云盘中的图片拖到这个项目中的img文件夹中去。

链接: https://pan.baidu.com/s/14uA8Emk3b5pJJus-MRxkTA  密码: 2rum


将下方百度云盘中的文件拖到这个项目中的js文件夹中去。

链接: https://pan.baidu.com/s/1Es2hUN-EtxfixruxKKOO-g  密码: 5tes




4.双击index.html文件


5.在body里敲入/复制导航栏的代码(敲的同学一定切换到英文输入法)

<!------------------------------------------ 导航栏 -------------------------------------->

<div id="dao-hang " class="dao-hang">

<div class="xiao-btn-fan-wei backBtn">

<img src="img/jian-tou.svg">

</div>

<h1>卖期房</h1>

</div>

写了一通代码,还不知道现在页面长什么样子吧?在浏览器中查看效果快捷键 Mac【command+R】      PC【control+R】


是不是被丑哭了?没关系接下来给它加点样式,变好看点点。



6.在css文件夹上右键,新建 ——> css文件,命名为index.css



7.在index.html中敲入/复制以下代码,引入index.css样式文件并保存当前index.html文件。快捷键 Mac【command+S】      PC【control+S】

<link rel="stylesheet" type="text/css" href="css/index.css" />



8.在index.css文件里敲入/复制以下导航栏的样式代码(含去除一些标签默认样式的代码),并保存。

/* 样式重置 */

* {

margin: 0;

padding: 0;

outline: none;

list-style: none;

}


html {

font-size: 8px;

}


body {

font-size: 16px;

background: #F3F3F3;

}


/* 导航栏的样式*/

.xiao-btn-fan-wei {

width: 2.5rem;

height: 2.5rem;

display: flex;

align-items: center;

justify-content: left;

}


.dao-hang {

height: 5.5rem;

background: linear-gradient(-90deg, #FBCA61, #F67F48);

display: flex;

align-items: center;

text-align: center;

position: relative;

}


.backBtn {

margin-left: 1rem;

}


h1 {

position: absolute;

left: 50%;

top: 50%;

transform: translate(-50%, -50%);

font-size: 2.125rem;

color: #fff;

font-weight: 400;

}

如果你代码敲的排版很乱,可以使用快捷键重排代码,让代码父、子、兄、弟关系明显一点 Mac【command+K】     pc【control+K】

点击index.html文件,切换到index.html后,使用快捷键在浏览器中打开页面看一看。是不是完成了变身?



9.接着在index.html里写步进器的结构,在body里面敲入/复制以下代码,并保存。

注:和导航栏和同层级的兄弟关系。

<!------------------------------------------ 步进器 -------------------------------------->

<div class="bu-jin-qi">

<div class="bu-jin-qi-inner">

<div class="bu-zou dang-qian-bu-zou">

<img src="img/xuan-lou.svg">

<p>1.选楼</p>

</div>

<div class="bu-zou">

<img src="img/xuan-fang.svg">

<p>2.选房</p>

</div>

<div class="bu-zou">

<img src="img/ji-ben-xin-xi.svg">

<p>3.填基本信息</p>

</div>

<div class="bu-zou">

<img src="img/tian-he-tong.svg">

<p>4.填合同</p>

</div>

<div class="bu-zou">

<img src="img/fu-jian.svg">

<p>5.上传附件</p>

</div>

<div class="bu-zou">

<img src="img/xu-wen-bi-lu.svg">

<p>6.询问笔录</p>

</div>

<div class="bu-zou">

<img src="img/bu-chong-mai-fang-xin-xi.svg">

<p>7.补充买方信息</p>

</div>

<div class="bu-zou">

<img src="img/que-ren-wan-cheng.svg">

<p>8.确认完成</p>

</div>

</div>

</div>

<div class="jin-du-tiao">

<div class="jin-du-tiao-inner">

<span>1/8</span>

</div>

</div>


使用快捷键在浏览器中打开页面看一看,是不是和刚才一样很丑,页面是乱的?没关系,那就像刚才一样给它写一点样式。


10.点击index.css,敲入/复制以下步进器的样式代码,并保存。

/* 导航栏的样式*/

.xiao-btn-fan-wei {

width: 2.5rem;

height: 2.5rem;

display: flex;

align-items: center;

justify-content: left;

}


.dao-hang {

height: 5.5rem;

background: linear-gradient(-90deg, #FBCA61, #F67F48);

display: flex;

align-items: center;

text-align: center;

position: relative;

}


.backBtn {

margin-left: 1rem;

}


h1 {

position: absolute;

left: 50%;

top: 50%;

transform: translate(-50%, -50%);

font-size: 2.125rem;

color: #fff;

font-weight: 400;

}


/* 步进器 */

.bu-jin-qi {

background: #fff;

height: 5.5rem;

box-sizing: border-box;

overflow-y: scroll;

}


.bu-jin-qi-inner {

background: #fff;

}


.bu-zou {

background: #FFFFFF;

color: #88909F;

height: 100%;

float: left;

padding: 0 1.8rem;

text-align: center;

border-right: 1px solid #EEEEEE;

}


.bu-zou img {

height: 2rem;

margin-top: 0.5rem;

}


.bu-zou p {

font-size: 1.375rem;

font-weight: 300;

}


.dang-qian-bu-zou {

color: #1A9BD7;

background: linear-gradient(90deg, #FAFEFF, #E8FAFF);


}


/* 进度条 */

.jin-du-tiao {

height: 1.5rem;

background: #F3F3F3;

}


.jin-du-tiao-inner {

width: 100px;

background: #F67F48;

height: 100%;

border-radius: 0px 40px 40px 0px;

position: relative;

}


.jin-du-tiao-inner span {

color: #fff;

font-size: 0.75rem;

line-height: 0.625rem;

position: absolute;

right: 0.625rem;

top: 0.5rem;

}


使用快捷键在浏览器中打开页面看一看页面效果,在实际开发过程中也是这样不断观察效果,来看自己写的代码是否达到想要的效果。



11.接着在index.html里添加一个装搜索组件和房源卡片的父盒子,在body里面敲入/复制以下代码,并保存。

<div class="continer">


</div>



12.接着在index.html里的<div class="continer"> </div>标签里面追加敲入/复制以下搜索组件代码,并保存。

<!------------------------------------------  搜索 -------------------------------------->

<div class="sou-suo">

<div class="shu-ru-zu-jian">

<p class="zhan-wei-ti-shi">坐落</p>

<input type="text" name="" id="" value="" class="su-ru-kuang" />

<button type="button">搜索</button>

</div>

<p class="fu-zhu">房太多不好找?试试输入房的坐落信息搜索</p>

</div>

使用快捷键在浏览器中打开页面看一看页面效果。



13.在index.css文件里追加敲入/复制以下导航栏的样式代码(含去除一些标签默认样式的代码),并保存。

/* 包搜索和房源卡片的父盒子 */

.continer {

box-sizing: border-box;

padding: 0 1rem;

}


/* 搜索 */

.sou-suo {

margin-top: 3rem;

}


.shu-ru-zu-jian {

position: relative;

}


.shu-ru-zu-jian input {

width: calc(100% - 1rem);

height: 5rem;

border: 1px solid #C6CAD0;

border-right: none;

padding-left: 2rem;

box-sizing: border-box;

border-radius: 1rem 0 0 1rem;

font-size: 1.75rem;

}


.shu-ru-zu-jian p {

position: absolute;

top: 0;

color: #C3C7CF;

font-size: 1.75rem;

line-height: 5rem;

left: 1rem;

transition: .3s;

/* background: #fff; */


}


.shu-ru-zu-jian button {

position: absolute;

right: 0;

top: 0;

height: 100%;

width: 8rem;

color: #fff;

border: none;

background: linear-gradient(-90deg, #FBCA61, #F67F48);

font-size: 1.75rem;

font-weight: 400;

border-radius: 0 1rem 1rem 0;

}


.sou-suo .fu-zhu {

color: #88909F;

font-size: 1.375rem;

font-weight: 300;

margin-top: 0.5rem;

text-indent: 1rem;

}


.er-ji-biao-ti {

font-size: 1.75rem;

margin: 3rem 0 1rem 0;

position: relative;

text-indent: 1.5rem;

color: #0B0E21;

}



14.接着在index.html里的<div class="continer"> </div>标签里面继续敲入/复制以下房源卡片的代码,并保存。

<!------------------------------------------  房源卡片 -------------------------------------->

<h3 class="er-ji-biao-ti">您的房源</h3>

<!-- 房源卡片 -->

<ul class="ka-pian">

<li class="shu-ju-zhan-shi">

<p class="jian">小区名称</p>

<p class="zhi">清半夏小区</p>

</li>

<li class="shu-ju-zhan-shi">

<p class="jian">幢号</p>

<p class="zhi">3</p>

</li>

<li class="shu-ju-zhan-shi">

<p class="jian">坐落</p>

<p class="zhi">滨海区幸福现路清半夏小区2号楼</p>

</li>

<li class="shu-ju-zhan-shi btn">

<button type="button">去选房</button>

<button type="button">地图</button>

</li>

</ul>



15.在index.css文件里追加敲入/复制以下房源卡片的样式代码,并保存。

/* 房源卡片 */

.ka-pian {

background: #fff;

padding: 1rem 0;

border-radius: 1rem

}


.ka-pian li:last-child {

border: none;

}


.er-ji-biao-ti::before {

content: '';

display: block;

position: absolute;

width: 0.625rem;

height: 1.625rem;

background: #F6844A;

border-radius: 10px;

top: 0.375rem;


}


.shu-ju-zhan-shi {

padding: 1rem 0px;

width: calc(100% - 2rem);

margin: 0 auto;

border-bottom: 1px solid #F1F1F3;

}


.shu-ju-zhan-shi .jian {

color: #C1C5CD;

font-size: 1.375rem;

margin-bottom: 0.25rem;

}


.shu-ju-zhan-shi .zhi {

font-size: 1.75rem;

color: #202020;

font-weight: 400;

}


.shu-ju-zhan-shi.btn {

overflow: hidden;

}


.shu-ju-zhan-shi.btn button {

float: right;

margin-left: 2.5rem;

height: 3.75rem;

padding: 0 2rem;

border-radius: 0.5rem;

font-size: 1.75rem;

}


.shu-ju-zhan-shi.btn button:nth-of-type(2) {

background: #fff;

color: #88909F;

border: 1px solid #88909F;

border-radius: 0.5rem

}


.shu-ju-zhan-shi.btn button:nth-of-type(1) {

background: linear-gradient(-90deg, #FBCA61, #F67F48);

color: #fff;

border: none;

}


到这里,接近尾声了。还差搜索组件的动效。



16.在index.html敲入/复制以下代码,并保存。

<!-- 下面行代码作用是引入jquer库 -->

<script src="js/jquery.js" type="text/javascript" charset="utf-8"></script>



17.在js文件上右击,新建 ——> js文件,命名为index.js


18.在index.js敲入/复制以下代码,并保存。

$(function(){

//给步进器设置宽度

var zongKuan = 0;

$('.bu-zou').each(function(){

zongKuan += $(this).innerWidth();

})

$('.bu-jin-qi-inner').width(zongKuan+8);



//输入框的动态效果

$(".su-ru-kuang").focus(function(){

  $(".zhan-wei-ti-shi").css("top","-70%");

});


$(".su-ru-kuang").blur(function(){

if($(this).val() == ""){

$(".zhan-wei-ti-shi").css("top","0%");

}

});

})



19.在index.html追加敲入/复制以下代码,并保存。

<!-- 下面行代码作用是引入我们自己写的javascript脚本-->

<script src="js/index.js" type="text/javascript" charset="utf-8"></script>



20.在index.html追加敲入/复制以下适配移动设备的代码,并保存。

<!-- 下面这行代码作用是适配手机等移动端 -->

<meta name='viewport' content="width=device-width, initial-scale=1.0, maximum-scale=1.0, user-scalale=no" />


到这里,真的是整个项目就写完了,可以使用快捷键在浏览器中查看一下整体效果。




四.手机运行项目

是不是挺有成就感?但是有没有注意到,到目前只是在电脑上查看,之前说的可以在手机上运行呀?怎么不一样了呢?

接下来教大家手机上查看项目的方法


1.找到电脑本机的ip,并复制

mac的方法:


pc的方法:

请参考这个百度经验 https://jingyan.baidu.com/article/495ba841d36b0938b30ede9c.html



2.点击项目的index.html文件,用快捷浏览器中打开 mac【command + R】     pc【control + R】



3.把刚复制的ip粘贴覆盖冒号:左边的所有内容,左边的所有内容,左边的所有内容,并回车键。

注:不用纠结怎么和我的显示不一样,每个机器的ip和端口是不同的。


5.将浏览器地址栏的URL全选复制后,通过QQ发到手机上去。



6.让手机连的无线网和电脑连的无线网是同一个!(非常重要)


7.可以点开链接查看项目了,QQ能打开查看,复制到手机浏览器中也能打开查看。


下一章开始的教程,会以视频教程为主,文字教程为辅的形式呈现。


4
举报
|
10
分享
相关推荐
评论
用户头像
评论你的想法~
表情
喜欢TA的作品吗?喜欢就快来夸夸TA吧!
推荐素材
钱包ui模板
新拟态风格 UI设计组件库
高级感金属拟物 UI设计组件库
【新年UI图标】积分icon
手表表盘UI系列
【新年UI图标】银行卡icon
智能家居中心 简约 UI设计组件库
科技医疗透明柜UI界面设计
【新年UI图标】相机icon
UI应用平面图标
APP/小程序商业项目UI模板|99个高保真UI+79个原型
UI 登录界面设计模板包
3D渐变流体抽象矢量UI背景图
我的钱包-UI界面设计-app
新能源APP应用UIKit
【新年UI图标】美食icon
UI通用设计素材1
户外旅行飞机情侣假日出行
Security Camera UI kit
森系3D渐变流体抽象矢量UI背景图
【新年UI图标】旅行icon
【新年UI图标】礼物/活动icon
盲盒APP UI设计
你可能喜欢
相关收藏夹
地产VI
地产VI
地产VI
地产VI
大家都在看
登录注册