首頁(yè)

【W(wǎng)eb前端筆記07】列表與超鏈接

seo達(dá)人

如果您想訂閱本博客內(nèi)容,每天自動(dòng)發(fā)到您的郵箱中, 請(qǐng)點(diǎn)這里

1.無(wú)序列表
無(wú)序列表是網(wǎng)頁(yè)中最常用的列表,之所以稱(chēng)為“無(wú)序列表”,是因?yàn)槠涓鱾€(gè)列表項(xiàng)之間為并列關(guān)系,沒(méi)有順序級(jí)別之分,列如:

<ul>
<li>列表1</li>
<li>列表2</li>
<li>列表3</li>
</ul>

2.有序列表
有序列表即為有順序的列表,其各個(gè)列表項(xiàng)會(huì)按照一定的順序排列,列如:

<ol>
<li>列表1</li>
<li>列表2</li>
<li>列表3</li>
</ol>


注:列表可以嵌套。

3.超鏈接標(biāo)記< a>
1.超鏈接
一個(gè)網(wǎng)站通常由多個(gè)頁(yè)面構(gòu)成,進(jìn)入網(wǎng)站時(shí)首先看到的是其首頁(yè),如果想從首頁(yè)跳轉(zhuǎn)到其子頁(yè)面,就需要在首頁(yè)相應(yīng)的位置添加超鏈接。其基本語(yǔ)法格式為:

<a href="跳轉(zhuǎn)目標(biāo)" target=“目標(biāo)窗口的彈出方式”>文本或者圖像</a>
1
其中,target有兩種取值方式:

–blank (在新窗口中打開(kāi))-self(默認(rèn)在本窗口打開(kāi))

2.偽類(lèi)
超鏈接標(biāo)記< a >的偽類(lèi) 含義
a:link{ CSS樣式規(guī)則; } 未訪問(wèn)時(shí)超鏈接的狀態(tài)
a:visited{ CSS樣式規(guī)則;} 訪問(wèn)之后超鏈接的狀態(tài)
a:hover{ CSS樣式規(guī)則;} 鼠標(biāo)經(jīng)過(guò),懸停時(shí)超鏈接的狀態(tài)
a:active{ CSS樣式規(guī)則;} 鼠標(biāo)單擊不動(dòng)時(shí)超鏈接的狀態(tài)
--------------------- 
藍(lán)藍(lán)設(shè)計(jì)sillybuy.com )是一家專(zhuān)注而深入的界面設(shè)計(jì)公司,為期望卓越的國(guó)內(nèi)外企業(yè)提供卓越的UI界面設(shè)計(jì)、BS界面設(shè)計(jì) 、 cs界面設(shè)計(jì) 、 ipad界面設(shè)計(jì) 、 包裝設(shè)計(jì) 、 圖標(biāo)定制 、 用戶(hù)體驗(yàn) 、交互設(shè)計(jì)、網(wǎng)站建設(shè) 、平面設(shè)計(jì)服務(wù)。

Tab Bar 圖標(biāo)動(dòng)效設(shè)計(jì)類(lèi)型總結(jié)

資深UI設(shè)計(jì)者

如果您想訂閱本博客內(nèi)容,每天自動(dòng)發(fā)到您的郵箱中, 請(qǐng)點(diǎn)這里

Tab bar 作為整個(gè) APP 的第一觸點(diǎn),給用戶(hù)傳遞的理念及信息在整個(gè) APP 中具有不可替代的重要性。我們的第一感受是粗糙或是精致,都會(huì)通過(guò)這個(gè)簡(jiǎn)單的操作切換而感知。因此 tab bar 的設(shè)計(jì),往往也是檢驗(yàn)整個(gè) APP 設(shè)計(jì)是否精致的標(biāo)準(zhǔn)。

Tab bar 設(shè)計(jì)中,有一個(gè)很重要但卻常常會(huì)被設(shè)計(jì)師們遺漏的關(guān)鍵點(diǎn)──tab 切換時(shí)的 「圖標(biāo)動(dòng)畫(huà)設(shè)計(jì)」。如這些 APP 的底部 tab 設(shè)計(jì)都使用了這一種方式(以下視頻):

Tab bars圖標(biāo)動(dòng)畫(huà)的作用

精彩的圖標(biāo)動(dòng)畫(huà),對(duì)整體的設(shè)計(jì)具有畫(huà)龍點(diǎn)睛的作用,降低 tab 切換時(shí)的枯燥感,提升操作的愉悅度和期待感。甚至可以通過(guò) tab 的動(dòng)畫(huà)設(shè)計(jì)給用戶(hù)傳達(dá)出整個(gè) APP 設(shè)計(jì)的品牌及理念。

1. 動(dòng)靜對(duì)比

動(dòng)態(tài)的設(shè)計(jì)豐富了圖標(biāo)更多可能性的表達(dá),結(jié)合不同的動(dòng)態(tài)效果表達(dá)出不同的情緒或情感。而除了情感的表達(dá)之外,最基礎(chǔ)的作用在于動(dòng)態(tài)比靜態(tài)更加吸引眼球,增加視覺(jué)關(guān)注度,因此在切換 tab 時(shí)具有更強(qiáng)的視覺(jué)沖擊力。

2. 柔和與生硬

緩動(dòng)的動(dòng)效過(guò)渡,相比于無(wú)動(dòng)效的設(shè)計(jì),在 tab 切換時(shí)整體的視覺(jué)感受會(huì)更加柔和、輕量。過(guò)渡直接的反饋,容易造成生硬而不具美感。

3. 趣味的表達(dá)

由于動(dòng)效的加入,我們?cè)谠O(shè)計(jì) tab 切換時(shí)會(huì)變得更加多元化,而不是單純的設(shè)計(jì)一個(gè)動(dòng)作的反饋。在過(guò)渡的時(shí)間差中,可以進(jìn)行很多趣味的表達(dá)。

3. 情緒代入

圖標(biāo)結(jié)合表情的設(shè)計(jì),運(yùn)用動(dòng)效的設(shè)計(jì),讓整體的情緒感受更加直觀。如下圖案例,默認(rèn)態(tài)與選中態(tài)通過(guò)前后的差異對(duì)比,點(diǎn)擊后出現(xiàn)的表情驚喜,具有不一樣的情緒變化。

Tab bar圖標(biāo)動(dòng)畫(huà)的基礎(chǔ)類(lèi)型

動(dòng)畫(huà)的設(shè)計(jì)是多樣化的,Tab bar 圖標(biāo)動(dòng)畫(huà)的類(lèi)型實(shí)際上并沒(méi)有明確的劃分,這里主要列舉的是自己在日常瀏覽設(shè)計(jì)網(wǎng)站時(shí)的收集,以及個(gè)人認(rèn)為比較常見(jiàn)的一些類(lèi)型。我們可以基于這些常見(jiàn)類(lèi)型的設(shè)計(jì),對(duì)我們的設(shè)計(jì)進(jìn)行再升華,從而提高整體設(shè)計(jì)的質(zhì)感和趣味。

1. 縮放動(dòng)畫(huà)

點(diǎn)擊后通過(guò)一定的比例 「縮放」 反饋,突出 tab 之前的變化,從而強(qiáng)化了 tab 操作的感知,提升對(duì)于操作區(qū)域的視覺(jué)聚焦。結(jié)合不同的縮放效果,可以呈現(xiàn)出不同的視覺(jué)感知,縮放動(dòng)畫(huà)大致分為線性和彈性?xún)煞N類(lèi)型。

線性縮放

圖標(biāo)在放大或縮小的過(guò)程中,使用了勻速的動(dòng)畫(huà)效果,整體動(dòng)畫(huà)一步到位、干凈利落。整體視覺(jué)感知較為柔和。

彈性縮放

帶有彈性縮放的 tab 反饋,讓整體的設(shè)計(jì)更加具有趣味性,相比線性縮放也更有視覺(jué)沖擊力。圖標(biāo)的運(yùn)動(dòng)規(guī)則:先從 0 放大到最大(數(shù)值根據(jù)實(shí)際情況設(shè)定),然后再回彈至正常大小。

2. 透明度自然過(guò)渡

讓 tab 切換之間的過(guò)渡更加自然、柔和。相比于純靜態(tài)切換只多了一層透明度變化,但卻具有完全不一樣的視覺(jué)感受。

3. 位移

位移出現(xiàn)的圖標(biāo)會(huì)產(chǎn)生一定的速度感,但需要控制位移的速度,過(guò)快容易忽略中間的運(yùn)動(dòng)軌跡,而影響自然過(guò)渡的效果。

4. 抖動(dòng)

通過(guò)圖標(biāo)的左右、上下快速位移或旋轉(zhuǎn)形成,整體的動(dòng)畫(huà)效果節(jié)奏較快,具有一定的速度感。情緒表達(dá)上較為俏皮。

左右抖動(dòng)

點(diǎn)擊后,圖標(biāo)反饋進(jìn)行上下快速位移。建議來(lái)回位移次數(shù)不宜太多,控制在 1-2 次左右,次數(shù)太多容易顯得拖沓。

跳動(dòng)的圖標(biāo)

點(diǎn)擊切換后,圖標(biāo)從底部彈起再回到初始位置,整體視覺(jué)感受具有跳動(dòng)的韻律感。

晃動(dòng)的圖標(biāo)

旋轉(zhuǎn)抖動(dòng)的圖標(biāo)比上下或左右會(huì)更加具有趣味感。設(shè)定圖標(biāo)的中心點(diǎn)或角點(diǎn)為旋轉(zhuǎn)軸,通過(guò)來(lái)回晃動(dòng)而形成的效果。

5. 填充

切換時(shí),默認(rèn) tab 由線性向面性的轉(zhuǎn)變。填充類(lèi)型的動(dòng)畫(huà)效果整體簡(jiǎn)單、直接,直觀地表達(dá)出圖標(biāo)切換前后的對(duì)應(yīng)關(guān)系。關(guān)鍵點(diǎn)在于處理好線性與面性圖標(biāo)的細(xì)節(jié)轉(zhuǎn)換。

中心填充

使用某種幾何圖形(可以是圓形或其他)通過(guò)發(fā)散放大的設(shè)計(jì)方式,結(jié)合一定的節(jié)奏韻律擴(kuò)展至填滿整個(gè)圖標(biāo)。

掃描填充

動(dòng)畫(huà)效果從圖標(biāo)的一側(cè),通過(guò)劃動(dòng)變化至填滿。

6. 畫(huà)線-線性軌跡

以線性圖標(biāo)或線面圖標(biāo)中的線運(yùn)動(dòng)為主,在設(shè)計(jì)整套圖標(biāo)時(shí),運(yùn)動(dòng)軌跡需要保持統(tǒng)一(線的初始與結(jié)束的位置/方向等)。軌跡不一致,容易導(dǎo)致圖標(biāo)的一致性被破壞。

局部細(xì)節(jié)畫(huà)線

選擇圖標(biāo)的關(guān)鍵細(xì)節(jié)或圖標(biāo)的特征進(jìn)行畫(huà)線設(shè)計(jì),增強(qiáng)圖標(biāo)的特征細(xì)節(jié),提高圖標(biāo)的記憶點(diǎn)。

整體畫(huà)線

與局部細(xì)節(jié)畫(huà)線基本一致,差別的點(diǎn)在于表達(dá)了不同的視覺(jué)感受。整體畫(huà)線從視覺(jué)感受上會(huì)相對(duì)更加飽滿。但需要根據(jù)圖標(biāo)的復(fù)雜程度而定,圖標(biāo)過(guò)渡復(fù)雜,可能容易造成拖沓的動(dòng)畫(huà)效果。

7. 結(jié)合容器

結(jié)合不同的幾何形作為選中圖標(biāo)的當(dāng)前態(tài)的背景,在背景上設(shè)計(jì)出現(xiàn)的動(dòng)畫(huà)效果。既強(qiáng)化了選中當(dāng)前態(tài),整體的 tab 切換的一致性也較高。

8. 元素介質(zhì)

設(shè)計(jì)上結(jié)合某種圖形元素作為當(dāng)前選中態(tài),在切換時(shí)通過(guò)元素的位移、跳動(dòng)等方式來(lái)達(dá)到 tab 切換的動(dòng)畫(huà)效果。

Tab圖標(biāo)動(dòng)畫(huà)的組合形

除了以上單種類(lèi)型的動(dòng)畫(huà)方式外,還可以嘗試多種方式結(jié)合。通過(guò)不同的方式結(jié)合可以產(chǎn)生出更多的可能性,讓你的設(shè)計(jì)更加具有創(chuàng)意和打破常規(guī)。

1. 填充+畫(huà)線

2. 填充+抖動(dòng)

3. 彈性縮放+填充

4. 元素介質(zhì)+抖動(dòng)

5. 位移+透明度

更多案例(來(lái)自dribbble)

總結(jié)

tab bar 的圖標(biāo)動(dòng)畫(huà)最大的作用在于解決切換時(shí)的枯燥與單調(diào),我們?cè)谠O(shè)計(jì)時(shí)除了單純追求動(dòng)畫(huà)的變化及多樣性之外,更多需要思考的是什么樣的動(dòng)畫(huà)更符合我們的設(shè)計(jì)。

本文的主旨是分享自己日??吹降囊恍﹦?dòng)畫(huà)效果,以及對(duì)收集的內(nèi)容進(jìn)行的分析。實(shí)際的動(dòng)畫(huà)樣式或者效果肯定遠(yuǎn)遠(yuǎn)不只這些,我們可以通過(guò)基礎(chǔ)的方法再結(jié)合自己的創(chuàng)意發(fā)揮出更多滿足自我設(shè)計(jì)的表達(dá)方式。

藍(lán)藍(lán)設(shè)計(jì)sillybuy.com )是一家專(zhuān)注而深入的界面設(shè)計(jì)公司,為期望卓越的國(guó)內(nèi)外企業(yè)提供卓越的UI界面設(shè)計(jì)、BS界面設(shè)計(jì) 、 cs界面設(shè)計(jì) 、 ipad界面設(shè)計(jì) 、 包裝設(shè)計(jì)  圖標(biāo)定制 、 用戶(hù)體驗(yàn) 、交互設(shè)計(jì)、 網(wǎng)站建設(shè) 、平面設(shè)計(jì)服務(wù)

HTML 盒子模型div

seo達(dá)人

如果您想訂閱本博客內(nèi)容,每天自動(dòng)發(fā)到您的郵箱中, 請(qǐng)點(diǎn)這里

HTML 中的div定義:

可定義文檔中的分區(qū)或節(jié)(division/section)。

標(biāo)簽可以把文檔分割為獨(dú)立的、不同的部分。它可以用作嚴(yán)格的組織工具,并且不使用任何格式與其關(guān)聯(lián)。

如果用 id 或 class 來(lái)標(biāo)記 div,那么該標(biāo)簽的作用會(huì)變得更加有效。
用法

div是一個(gè)塊級(jí)元素。這意味著它的內(nèi)容自動(dòng)地開(kāi)始一個(gè)新行。實(shí)際上,換行是

固有的唯一格式表現(xiàn)??梢酝ㄟ^(guò) div的 class 或 id 應(yīng)用額外的樣式。
不必為每一個(gè) div都加上類(lèi)或 id,雖然這樣做也有一定的好處。

可以對(duì)同一個(gè) div 元素應(yīng)用 class 或 id 屬性,但是更常見(jiàn)的情況是只應(yīng)用其中一種。這兩者的主要差異是,class 用于元素組(類(lèi)似的元素,或者可以理解為某一類(lèi)元素),而 id 用于標(biāo)識(shí)單獨(dú)的唯一的元素。

實(shí)例
<div id = " text"><div> <div class = " text1"><div> <div class = " text1"><div>
//div 中可以設(shè)置id屬性,通過(guò)引用id屬性來(lái)為div設(shè)置一些樣式

//在style標(biāo)簽中,可以對(duì)你寫(xiě)的代碼進(jìn)行樣式的設(shè)計(jì),樣式設(shè)計(jì)可以通過(guò)以下幾種方法來(lái)寫(xiě)
1.通過(guò)引用id來(lái)設(shè)置樣式,在id名稱(chēng)前加上# 格式: #id名稱(chēng){ }
#text{ }
2.通過(guò)class來(lái)設(shè)置樣式,class后面的名字可以是一樣的,而id取名唯一,因此在需要設(shè)置同類(lèi)型的樣式時(shí)可以使用class來(lái)設(shè)置 格式: .class名稱(chēng){ }
.text1{ }
3.通過(guò)標(biāo)簽名稱(chēng)來(lái)設(shè)置樣式 格式: div{ }
div{ }

樣式:
1.width :50px; // 寬度
2.height :50px;//高度
3.border : 1px solid red; //邊框,border可以設(shè)置三個(gè)屬性,分別是邊框?qū)挾?,邊框樣式(?shí)線,虛線等),邊框顏色
4.margin:屬性定義及使用說(shuō)明

margin簡(jiǎn)寫(xiě)屬性在一個(gè)聲明中設(shè)置所有外邊距屬性。該屬性可以有1到4個(gè)值。

實(shí)例:

margin:10px 5px 15px 20px;
    上邊距是 10px
    右邊距是 5px
    下邊距是 15px
    左邊距是 20px

margin:10px 5px 15px;
    上邊距是 10px
    右邊距和左邊距是 5px
    下邊距是 15px

margin:10px 5px;
    上邊距和下邊距是 10px
    右邊距和左邊距是 5px

margin:10px;
    所有四個(gè)邊距都是 10px
藍(lán)藍(lán)設(shè)計(jì)sillybuy.com )是一家專(zhuān)注而深入的界面設(shè)計(jì)公司,為期望卓越的國(guó)內(nèi)外企業(yè)提供卓越的UI界面設(shè)計(jì)、BS界面設(shè)計(jì) 、 cs界面設(shè)計(jì) 、 ipad界面設(shè)計(jì) 、 包裝設(shè)計(jì) 、 圖標(biāo)定制 、 用戶(hù)體驗(yàn) 、交互設(shè)計(jì)、網(wǎng)站建設(shè) 、平面設(shè)計(jì)服務(wù)。

|學(xué)會(huì)版式的N個(gè)Tips|—線要怎樣用,才能讓你的設(shè)計(jì)更加分

資深UI設(shè)計(jì)者

如果您想訂閱本博客內(nèi)容,每天自動(dòng)發(fā)到您的郵箱中, 請(qǐng)點(diǎn)這里

線往往會(huì)被設(shè)計(jì)師忽略,或許對(duì)線的理解有局限性,因而不常使用。那么線要怎樣用才能讓設(shè)計(jì)更加分呢?下面給大家分享關(guān)于線的文章

文章來(lái)源:站酷

藍(lán)藍(lán)設(shè)計(jì)sillybuy.com )是一家專(zhuān)注而深入的界面設(shè)計(jì)公司,為期望卓越的國(guó)內(nèi)外企業(yè)提供卓越的UI界面設(shè)計(jì)、BS界面設(shè)計(jì) 、 cs界面設(shè)計(jì) 、 ipad界面設(shè)計(jì)  包裝設(shè)計(jì)  圖標(biāo)定制 、 用戶(hù)體驗(yàn) 、交互設(shè)計(jì)、 網(wǎng)站建設(shè) 、平面設(shè)計(jì)服務(wù)

7個(gè)有用的Vue開(kāi)發(fā)技巧

seo達(dá)人

如果您想訂閱本博客內(nèi)容,每天自動(dòng)發(fā)到您的郵箱中, 請(qǐng)點(diǎn)這里

1 狀態(tài)共享

隨著組件的細(xì)化,就會(huì)遇到多組件狀態(tài)共享的情況,Vuex當(dāng)然可以解決這類(lèi)問(wèn)題,不過(guò)就像Vuex官方文檔所說(shuō)的,如果應(yīng)用不夠大,為避免代碼繁瑣冗余,最好不要使用它,今天我們介紹的是vue.js 2.6新增加的Observable API ,通過(guò)使用這個(gè)api我們可以應(yīng)對(duì)一些簡(jiǎn)單的跨組件數(shù)據(jù)狀態(tài)共享的情況。


如下這個(gè)例子,我們將在組件外創(chuàng)建一個(gè)store,然后在App.vue組件里面使用store.js提供的store和mutation方法,同理其它組件也可以這樣使用,從而實(shí)現(xiàn)多個(gè)組件共享數(shù)據(jù)狀態(tài)。


首先創(chuàng)建一個(gè)store.js,包含一個(gè)store和一個(gè)mutations,分別用來(lái)指向數(shù)據(jù)和處理方法。



import Vue from "vue";

export const store = Vue.observable({ count: 0 });

export const mutations = {

setCount(count) {

store.count = count;

}

};

復(fù)制代碼

然后在App.vue里面引入這個(gè)store.js,在組件里面使用引入的數(shù)據(jù)和方法



<template>

<div id="app">

<img width="25%" src="./assets/logo.png">

<p>count:{{count}}</p>

<button @click="setCount(count+1)">+1</button>

<button @click="setCount(count-1)">-1</button>

</div>

</template>

<script>

import { store, mutations } from "./store";

export default {

name: "App",

computed: {

count() {

return store.count;

}

},

methods: {

setCount: mutations.setCount

}

};

</script>

<style>

復(fù)制代碼

你可以點(diǎn)擊在線DEMO查看最終效果


2 長(zhǎng)列表性能優(yōu)化

我們應(yīng)該都知道vue會(huì)通過(guò)object.defineProperty對(duì)數(shù)據(jù)進(jìn)行劫持,來(lái)實(shí)現(xiàn)視圖響應(yīng)數(shù)據(jù)的變化,然而有些時(shí)候我們的組件就是純粹的數(shù)據(jù)展示,不會(huì)有任何改變,我們就不需要vue來(lái)劫持我們的數(shù)據(jù),在大量數(shù)據(jù)展示的情況下,這能夠很明顯的減少組件初始化的時(shí)間,那如何禁止vue劫持我們的數(shù)據(jù)呢?可以通過(guò)object.freeze方法來(lái)凍結(jié)一個(gè)對(duì)象,一旦被凍結(jié)的對(duì)象就再也不能被修改了。



export default {

data: () => ({

users: {}

}),

async created() {

const users = await axios.get("/api/users");

this.users = Object.freeze(users);

}

};

復(fù)制代碼

另外需要說(shuō)明的是,這里只是凍結(jié)了users的值,引用不會(huì)被凍結(jié),當(dāng)我們需要reactive數(shù)據(jù)的時(shí)候,我們可以重新給users賦值。



export default {

data: () => ({

users: []

}),

async created() {

const users = await axios.get("/api/users");

this.users = Object.freeze(users);

},

methods:{

// 改變值不會(huì)觸發(fā)視圖響應(yīng)

this.users[0] = newValue

// 改變引用依然會(huì)觸發(fā)視圖響應(yīng)

this.users = newArray

}

};

復(fù)制代碼

3 去除多余的樣式

隨著項(xiàng)目越來(lái)越大,書(shū)寫(xiě)的不注意,不自然的就會(huì)產(chǎn)生一些多余的css,小項(xiàng)目還好,一旦項(xiàng)目大了以后,多余的css會(huì)越來(lái)越多,導(dǎo)致包越來(lái)越大,從而影響項(xiàng)目運(yùn)行性能,所以有必要在正式環(huán)境去除掉這些多余的css,這里推薦一個(gè)庫(kù)purgecss,支持CLI、JavascriptApi、Webpack等多種方式使用,通過(guò)這個(gè)庫(kù),我們可以很容易的去除掉多余的css。


我做了一個(gè)測(cè)試,在線DEMO



<h1>Hello Vanilla!</h1>

<div>

We use Parcel to bundle this sandbox, you can find more info about Parcel

<a target="_blank" rel="noopener noreferrer">here</a>.

</div>

復(fù)制代碼


body {

font-family: sans-serif;

}

a {

color: red;

}

ul {

li {

list-style: none;

}

} import Purgecss from "purgecss";

const purgecss = new Purgecss({

content: ["**/*.html"],

css: ["**/*.css"]

});

const purgecssResult = purgecss.purge();


終產(chǎn)生的purgecssResult結(jié)果如下,可以看到多余的a和ul標(biāo)簽的樣式都沒(méi)了


4 作用域插槽

利用好作用域插槽可以做一些很有意思的事情,比如定義一個(gè)基礎(chǔ)布局組件A,只負(fù)責(zé)布局,不管數(shù)據(jù)邏輯,然后另外定義一個(gè)組件B負(fù)責(zé)數(shù)據(jù)處理,布局組件A需要數(shù)據(jù)的時(shí)候就去B里面去取。假設(shè),某一天我們的布局變了,我們只需要去修改組件A就行,而不用去修改組件B,從而就能充分復(fù)用組件B的數(shù)據(jù)處理邏輯,關(guān)于這塊我之前寫(xiě)過(guò)一篇實(shí)際案例,可以點(diǎn)擊這里查看。


這里涉及到的一個(gè)最重要的點(diǎn)就是父組件要去獲取子組件里面的數(shù)據(jù),之前是利用slot-scope,自vue 2.6.0起,提供了更好的支持 slot和 slot-scope 特性的 API 替代方案。


比如,我們定一個(gè)名為current-user的組件:



<span>

<slot>{{ user.lastName }}</slot>

</span>

復(fù)制代碼

父組件引用current-user的組件,但想用名替代姓(老外名字第一個(gè)單詞是名,后一個(gè)單詞是姓):



<current-user>

{{ user.firstName }}

</current-user>

復(fù)制代碼

這種方式不會(huì)生效,因?yàn)閡ser對(duì)象是子組件的數(shù)據(jù),在父組件里面我們獲取不到,這個(gè)時(shí)候我們就可以通過(guò)v-slot 來(lái)實(shí)現(xiàn)。


首先在子組件里面,將user作為一個(gè)<slot>元素的特性綁定上去:



<span>

<slot v-bind:user="user">

{{ user.lastName }}

</slot>

</span>

復(fù)制代碼

之后,我們就可以在父組件引用的時(shí)候,給v-slot帶一個(gè)值來(lái)定義我們提供的插槽 prop 的名字:



<current-user>

<template v-slot:default="slotProps">

{{ slotProps.user.firstName }}

</template>

</current-user>

復(fù)制代碼

這種方式還有縮寫(xiě)語(yǔ)法,可以查看獨(dú)占默認(rèn)插槽的縮寫(xiě)語(yǔ)法,最終我們引用的方式如下:



<current-user v-slot="slotProps">

{{ slotProps.user.firstName }}

</current-user>

復(fù)制代碼

相比之前slot-scope代碼更清晰,更好理解。


5 屬性事件傳遞

寫(xiě)過(guò)高階組件的童鞋可能都會(huì)碰到過(guò)將加工過(guò)的屬性向下傳遞的情況,如果碰到屬性較多時(shí),需要一個(gè)個(gè)去傳遞,非常不友好并且費(fèi)時(shí),有沒(méi)有一次性傳遞的呢(比如react里面的{...this.props})?答案就是v-bind和v-on。


舉個(gè)例子,假如有一個(gè)基礎(chǔ)組件BaseList,只有基礎(chǔ)的列表展示功能,現(xiàn)在我們想在這基礎(chǔ)上增加排序功能,這個(gè)時(shí)候我們就可以創(chuàng)建一個(gè)高階組件SortList。



<!-- SortList  -->

<template>

<BaseList v-bind="$props" v-on="$listeners"> <!-- ... --> </BaseList>

</template>

<script>

import BaseList from "./BaseList";

// 包含了基礎(chǔ)的屬性定義

import BaseListMixin from "./BaseListMixin";

// 封裝了排序的邏輯

import sort from "./sort.js";

export default {

props: BaseListMixin.props,

components: {

BaseList

}

};

</script>

復(fù)制代碼

可以看到傳遞屬性和事件的方便性,而不用一個(gè)個(gè)去傳遞


6 函數(shù)式組件

函數(shù)式組件,即無(wú)狀態(tài),無(wú)法實(shí)例化,內(nèi)部沒(méi)有任何生命周期處理方法,非常輕量,因而渲染性能高,特別適合用來(lái)只依賴(lài)外部數(shù)據(jù)傳遞而變化的組件。


寫(xiě)法如下:


在template標(biāo)簽里面標(biāo)明functional

只接受props值

不需要script標(biāo)簽


<!-- App.vue -->

<template>

<div id="app">

<List

:items="['Wonderwoman', 'Ironman']"

:item-click="item => (clicked = item)"

/>

<p>Clicked hero: {{ clicked }}</p>

</div>

</template>

<script>

import List from "./List";

export default {

name: "App",

data: () => ({ clicked: "" }),

components: { List }

};

</script>

復(fù)制代碼


<!-- List.vue 函數(shù)式組件 -->

<template functional>

<div>

<p v-for="item in props.items" @click="props.itemClick(item);">

{{ item }}

</p>

</div>

</template>

復(fù)制代碼

7 監(jiān)聽(tīng)組件的生命周期

比如有父組件Parent和子組件Child,如果父組件監(jiān)聽(tīng)到子組件掛載mounted就做一些邏輯處理,常規(guī)的寫(xiě)法可能如下:



// Parent.vue

<Child @mounted="doSomething"/>

// Child.vue

mounted() {

this.$emit("mounted");

}

復(fù)制代碼

這里提供一種特別簡(jiǎn)單的方式,子組件不需要任何處理,只需要在父組件引用的時(shí)候通過(guò)@hook來(lái)監(jiān)聽(tīng)即可,代碼重寫(xiě)如下:



<Child @hook:mounted="doSomething"/>

復(fù)制代碼

當(dāng)然這里不僅僅是可以監(jiān)聽(tīng)mounted,其它的生命周期事件,例如:created,updated等都可以,是不是特別方便~


參考鏈接:


vueTips

vuePost


藍(lán)藍(lán)設(shè)計(jì)sillybuy.com )是一家專(zhuān)注而深入的界面設(shè)計(jì)公司,為期望卓越的國(guó)內(nèi)外企業(yè)提供卓越的UI界面設(shè)計(jì)、BS界面設(shè)計(jì) 、 cs界面設(shè)計(jì) 、 ipad界面設(shè)計(jì) 、 包裝設(shè)計(jì) 、 圖標(biāo)定制 、 用戶(hù)體驗(yàn) 、交互設(shè)計(jì)、 網(wǎng)站建設(shè) 、平面設(shè)計(jì)服務(wù)。


頂部導(dǎo)航欄設(shè)計(jì)樣式匯總

資深UI設(shè)計(jì)者

如果您想訂閱本博客內(nèi)容,每天自動(dòng)發(fā)到您的郵箱中, 請(qǐng)點(diǎn)這里

本篇文章主要匯總了常見(jiàn)的四種頂部導(dǎo)航欄設(shè)計(jì)樣式,希望能幫助自己和小伙伴們更好地理解導(dǎo)航欄這個(gè)組件。

頂部導(dǎo)航欄作為我們使用APP時(shí)每天都要遇到的組件,出鏡頻率極高,看似簡(jiǎn)單,其實(shí)我們?cè)诶L制界面的時(shí)候還是有許多細(xì)節(jié)需要注意的。本篇文章主要匯總了常見(jiàn)的四種頂部導(dǎo)航欄設(shè)計(jì)樣式,希望能幫助大家更好地理解導(dǎo)航欄這個(gè)組件。


一、常規(guī)導(dǎo)航欄

所謂常規(guī)導(dǎo)航欄,主要是指固定在狀態(tài)欄下,能清晰分辨出的一行導(dǎo)航欄,主要由操作圖標(biāo)、標(biāo)題、搜索框、背景等組成,大致分成三種,分別是簡(jiǎn)單標(biāo)題導(dǎo)航欄、搜索框?qū)Ш綑谝约癟ab/分段控件導(dǎo)航欄。


1.簡(jiǎn)單標(biāo)題導(dǎo)航欄

簡(jiǎn)單標(biāo)題導(dǎo)航欄常見(jiàn)于二級(jí)詳情界面或?qū)Ш胶?jiǎn)單的一級(jí)界面,主要由操作圖標(biāo)與標(biāo)題組成,如下圖:

(以下涉及的尺寸大小都是二倍圖下的設(shè)計(jì)大小)

該類(lèi)型的導(dǎo)航標(biāo)題的大小一般是36px,操作圖標(biāo)的設(shè)計(jì)大小一般是40px,切圖大小一般是48px,背景色多采用白色或APP主題色。并且很多APP為了保證整體界面的簡(jiǎn)潔,還會(huì)去除導(dǎo)航欄底部分割線,僅采用白色作為背景。


2.搜索框?qū)Ш綑?/strong>

常規(guī)搜索框?qū)Ш綑谑窃诤?jiǎn)單標(biāo)題導(dǎo)航欄的基礎(chǔ)上,增加了一個(gè)搜索框,一般去除了導(dǎo)航標(biāo)題。如下圖:

搜索框的寬度隨導(dǎo)航欄中操作圖標(biāo)的多少?zèng)Q定,搜索框高度多采用56~60px,搜索框中的圖標(biāo)設(shè)計(jì)尺寸多采用32px(為了減少切圖尺寸,也可采用48px的切圖大小)。

 

在擺放圖標(biāo)時(shí),采用左右間距等分,距離搜索框的間距與邊距相等,看起來(lái)會(huì)更舒適。如下圖所示:


3.Tab/分段控件導(dǎo)航欄

Tab左右切換頂部導(dǎo)航欄與分段控件頂部導(dǎo)航欄,都是頂部有多個(gè)標(biāo)題切換的導(dǎo)航欄樣式,分為選中標(biāo)題與未選中標(biāo)題,如下圖:


分段控件頂部導(dǎo)航欄一般有2~5個(gè)可選項(xiàng),且不能左右滑動(dòng)。Tab左右切換頂部導(dǎo)航欄的可選項(xiàng)可以擴(kuò)展很多(如愛(ài)奇藝的首頁(yè)頂部Tab切換有24個(gè)可選項(xiàng)),并且可以左右滑動(dòng)切換,選中樣式也比較豐富,常見(jiàn)的有底部加上小短線、字體顏色變化、字號(hào)放大等(多個(gè)合并使用更能突出選中標(biāo)題),如下圖:



二、通欄導(dǎo)航欄

通欄導(dǎo)航欄與常規(guī)導(dǎo)航欄的構(gòu)成基本沒(méi)有區(qū)別,最大的不同是,通欄導(dǎo)航欄的背景層一般與下方的模塊打通了,在視覺(jué)上看起來(lái)更為統(tǒng)一,還能一定程度上節(jié)約界面空間。如下圖:

通欄導(dǎo)航欄常用在電商、旅游等界面復(fù)雜或是需要烘托氛圍的界面中(多伴隨著背景處理),有些也會(huì)放在頂部通欄Banner上,節(jié)省空間的同時(shí)減少割裂感。


通欄導(dǎo)航欄的背景處理方式一般有三種

1.特殊背景處理:與下方模塊整體風(fēng)格保持一致,多采用與下方一致的圖片背景;

2.顏色、漸變背景:采用純色或是漸變背景,常見(jiàn)于卡片風(fēng)格的界面;

3.黑色透明漸變蒙層:采用一層漸變蒙層,常見(jiàn)于圖片Banner上,保證導(dǎo)航欄文字的可識(shí)別性。




三、大標(biāo)題導(dǎo)航欄

自ios11發(fā)布后,大標(biāo)題風(fēng)格的導(dǎo)航欄便開(kāi)始流行起來(lái),尤其是飛機(jī)稿總能看見(jiàn)大標(biāo)題導(dǎo)航欄的影子。普通的導(dǎo)航欄在二倍圖下高度只有88px,標(biāo)題字號(hào)為36px,而大標(biāo)題導(dǎo)航欄在二倍圖下高度足足有192px,標(biāo)題字號(hào)為68px。


但并不是所有APP都適合使用大標(biāo)題導(dǎo)航欄,并且即便使用大標(biāo)題導(dǎo)航欄,整個(gè)APP中也不會(huì)全部使用,使用中界面向上滑動(dòng)也會(huì)切換成正常狀態(tài)的導(dǎo)航欄或直接隱去導(dǎo)航欄,便于內(nèi)容的查看。

 

有些APP也會(huì)折中使用,在常規(guī)88PX(二倍圖)導(dǎo)航欄高度下,放大字號(hào),隱去分割線,使標(biāo)題看起來(lái)更大。



使用大標(biāo)題導(dǎo)航欄,你需要考慮以下兩點(diǎn):

1.是否需要幫助用戶(hù)快速確認(rèn)所處位置(多為產(chǎn)品頁(yè)面重復(fù)性多,或是功能單一的APP);

2.APP整體風(fēng)格是否偏向簡(jiǎn)約大氣。

大標(biāo)題導(dǎo)航欄總給人一種高逼格的感覺(jué),這也是為什么飛機(jī)稿喜歡使用大標(biāo)題,但卻沒(méi)見(jiàn)國(guó)內(nèi)的電商APP使用。



四、小程序?qū)Ш綑?/span>

微信的小程序?qū)Ш綑?,在頂部右上方有一個(gè)不可去除也無(wú)法編輯的Titlebar按鈕,微信配置了一深一淺兩種風(fēng)格。

 

從APP轉(zhuǎn)換到小程序時(shí),要注意調(diào)整APP的頂部導(dǎo)航欄的位置以及搜索框的大小,避免被Titlebar遮擋,如下圖:

上圖中,豌豆公主的頂部導(dǎo)航欄整體下移,并且減小了搜索框的高度,提高屏幕的利用率。


五、劃重點(diǎn)

·常規(guī)導(dǎo)航欄主要包括簡(jiǎn)單標(biāo)題導(dǎo)航欄、搜索框?qū)Ш綑谝约癟ab/分段控件導(dǎo)航欄通欄導(dǎo)航欄

 

·通欄導(dǎo)航欄要注意導(dǎo)航背景的處理,常用的有特殊背景處理、顏色漸變背景、黑色透明漸變蒙層

 

·大標(biāo)題導(dǎo)航欄使界面整體更有逼格,但不是所有APP都適合的,要根據(jù)情況合理使用

 

·微信小程序?qū)Ш綑谠陧敳坑疑戏接幸粋€(gè)不可去除也無(wú)法編輯的Titlebar按鈕,從APP換到小程序時(shí)要注意重新調(diào)整導(dǎo)航欄

如何成為一個(gè)讓人幸福的設(shè)計(jì)師?

資深UI設(shè)計(jì)者

如果您想訂閱本博客內(nèi)容,每天自動(dòng)發(fā)到您的郵箱中, 請(qǐng)點(diǎn)這里

提起小山薰堂,大家可能都會(huì)感到陌生,但是如果說(shuō)到熊本熊,大家腦海里肯定會(huì)浮現(xiàn)出一只活靈活現(xiàn)、機(jī)靈可愛(ài)的熊本熊形象,今天我們分享的就是熊本熊之父—— 小山薰堂先生的《幸福策劃術(shù)》。

小山薰堂現(xiàn)在的職業(yè)是京都造形藝術(shù)大學(xué)副校長(zhǎng)、藝術(shù)學(xué)部教授,而且寫(xiě)的第一個(gè)電影劇本還獲得奧斯卡獎(jiǎng),除此之外,他還當(dāng)過(guò)電臺(tái) DJ、企業(yè)顧問(wèn)、作家、作詞家、美食家、大學(xué)教授、綜藝編劇等其他職業(yè)。

MOI J’ATTENDS

小山薰堂分享的主題是《幸福的策劃術(shù)》,在一開(kāi)始,他先是給我們分享了一本來(lái)自法國(guó)作家大衛(wèi)·卡利(Davide Cali)的繪本《MOI J’ATTENDS》(中文譯名《我等待》),這本插畫(huà)書(shū)中,Davide Cali用一根紅線,串聯(lián)起一個(gè)男孩子一生每個(gè)重要時(shí)刻的等待的場(chǎng)景,從垂髫,到耄耋,從初生牛犢,到兩鬢如霜。

△ 法國(guó)作家大衛(wèi)·卡利(Davide Cali) – 「MOI J’ATTENDS」封面

這是一本讓人很感動(dòng)的繪本,從這本書(shū)中小山薰堂先生反思道,現(xiàn)在這個(gè)時(shí)代,我們仿佛都厭倦了等待,人越來(lái)越?jīng)]有耐心,很多人認(rèn)為等待是沒(méi)有價(jià)值的,所以很多人會(huì)把「方便」和「幸?!箘澤系忍?hào),但是小山薰堂先生對(duì)這個(gè)觀點(diǎn)是持懷疑態(tài)度的,他覺(jué)得幸福是需要被創(chuàng)造出來(lái)的。

△ 《MOI J’ATTENDS》書(shū)籍內(nèi)頁(yè)

BIRTHDAY PRESENT

小山薰堂先生說(shuō)到,在他們公司,要求所有的員工都必須有策劃和執(zhí)行「birthday present」的能力,對(duì)于這個(gè)能力,小山薰堂先生覺(jué)得作為創(chuàng)意工作者,需要和偷偷去買(mǎi)個(gè)蛋糕制造驚喜這種橋段有所區(qū)別,小山薰堂對(duì)「birthday present」定下的 kpi 是「越夸張?jiān)襟@喜越好」。在他看來(lái),制定這個(gè)「birthday present」,可以提高員工對(duì)同仁的觀察能力,并且可以得到這個(gè)驚喜之外的收獲。

今年六月是小山薰堂的生日,他的同事給他送了一個(gè)在他看來(lái)很普通的杯子,但是得知了這個(gè)杯子的來(lái)歷后,小山薰堂卻很感動(dòng),原來(lái),這個(gè)杯子是他們公司45名員工,從奈良到東京,每人跑十公里,通過(guò)接力,從奈良知名陶藝家辻村史朗一路傳到他的手里的,接力的過(guò)程中全程都有視頻的記錄,并且在接力到每個(gè)車(chē)站站牌的時(shí)候都會(huì)有與站牌的合照,這些也是作為生日禮物的一部分,所以,小山薰堂覺(jué)得這是一個(gè)很滿意很感動(dòng)很不普通的生日禮物。在這次的生日中他不僅僅得到了一個(gè)酒杯,一段記錄視頻和站牌的合照,還因?yàn)槿痰牟邉澬枰渌齻€(gè)合作公司的通力合作,過(guò)程中消除了很多的問(wèn)題,所以這對(duì)他來(lái)說(shuō)也是一個(gè)很有意義的生日禮物的一部分。

△ 員工為小山薰堂生日特意設(shè)計(jì)的標(biāo)志 | ©?小山薰堂

「Chalie Vice」

他還分享到,在日本有一個(gè)位于東京新宿伊勢(shì)丹百貨八樓的選物品牌──Chalie Vice。這個(gè)品牌也來(lái)源一個(gè)于「birthday present」。

△ ©?小山薰堂

原來(lái)小山薰堂公司有一個(gè)叫輕部政治的人,是他們公司的副社長(zhǎng),輕部政治特別喜好時(shí)尚,每天都會(huì)穿著自己覺(jué)得很滿意的服飾來(lái)上班,不過(guò)在小山薰堂看來(lái),輕部政治的著裝略顯浮夸和不穩(wěn)重,所以在他生日來(lái)臨之前,瞞著輕部政治策劃了一場(chǎng)名為「Chalie Vice」的「birthday present」。

流程是這樣的,在輕部政治生日前三個(gè)月,小山薰堂告訴他有一個(gè)時(shí)尚品牌「Chalie Vice」即將在東京設(shè)立分店,小山薰堂的公司負(fù)責(zé)這個(gè)品牌的落地和推廣。前面說(shuō)到,輕部政治對(duì)時(shí)尚很熱衷,所以這個(gè)項(xiàng)目也就自然而然地交給輕部政治負(fù)責(zé)。

△ 員工為「chalie vice」特地設(shè)計(jì)的初始標(biāo)志 | ©?小山薰堂

這樣,「Chalie Vice」這個(gè)偽時(shí)尚品牌就在他們公司傳開(kāi)了,大家都開(kāi)始討論這個(gè)品牌,但也僅限在公司內(nèi)部,因?yàn)橥饨绺静恢肋@個(gè)品牌。

因?yàn)椤窩halie Vice」是海外的品牌,所以這個(gè)時(shí)候,需要一位關(guān)鍵的角色,就是「Chalie Vice」的投資人,為此小山薰堂還找了經(jīng)紀(jì)外國(guó)人的日本公司進(jìn)行面試,選了一位面相特別像阿拉伯人的外國(guó)男子,對(duì)其角色設(shè)定為「投資 Chalie Vice 的阿拉伯王子」,然后小山薰堂就把輕部政治帶到一個(gè)時(shí)尚酒會(huì)上,假裝和阿拉伯王子聊天,然后假裝阿拉伯王子的人就轉(zhuǎn)頭對(duì)旁邊的助理說(shuō)了一些話,助理(當(dāng)然也是找的演員)就對(duì)輕部政治說(shuō):「王子覺(jué)得你很帥,希望你可以作為品牌的代言人」。輕部政治肯定很樂(lè)意,就這樣,輕部政治就順理成章地成為「Chalie Vice」的日本地區(qū)代言人。

既然是當(dāng)了代言人,那么就需要拍攝形象照,所以,在輕部政治生日的當(dāng)天,小山薰堂讓輕部政治穿上他花了一萬(wàn)多日元買(mǎi)的貼著「Chalie Vice」假吊牌的西裝,進(jìn)到黑色背景的攝影棚拍照,在輕部政治雙手交叉在胸前擺好 pose 的時(shí)候,黑布后面站滿了小山薰堂整個(gè)公司的同事在攝影師按下快門(mén)的瞬間拉下幕布,熱烈慶祝輕部政治生日快樂(lè)。

△ 「整蠱」成功 | ©?小山薰堂

一個(gè)完美的好玩的生日策劃就這樣結(jié)束了,但是小山薰堂整個(gè)公司的人都有點(diǎn)不舍,雖然這是一個(gè)假的虛構(gòu)的品牌,但是大家三個(gè)月來(lái)的一切策劃和設(shè)計(jì)卻都是實(shí)打?qū)嵾M(jìn)行的,把它當(dāng)成一個(gè)真正的品牌在策劃,所以有一個(gè)同事就說(shuō),我們何不真的做這個(gè)品牌?剛好小山薰堂和伊勢(shì)丹百貨的社長(zhǎng)共同參加一個(gè)晚宴。吃飯的時(shí)候,問(wèn)他「你知道 Chalie Vice 嗎?」社長(zhǎng)說(shuō)他沒(méi)聽(tīng)過(guò),小山薰堂就把這三個(gè)月來(lái)的「birthday present」策劃活動(dòng)告訴了他。第二天,小山薰堂的公司就接到了伊勢(shì)丹百貨高層采購(gòu)的電話,表示對(duì)「Chalie Vice」感興趣,希望可以在伊勢(shì)丹百貨八樓開(kāi)店。

就這樣,一個(gè)源于「birthday present」的驚喜,逐步演變成一個(gè)真正的品牌。而在開(kāi)業(yè)前,小山薰堂還動(dòng)用他在日本的影響力,請(qǐng)來(lái)了很多日本各行各業(yè)的人士,拍攝了一個(gè)《about ‘CHALIE VICE’》的視頻,視頻中,各行各業(yè)的人士紛紛一本正經(jīng)地聊起了這個(gè)關(guān)于「Chalie Vice」的品牌,但其實(shí)這也都是小山薰堂的一個(gè)創(chuàng)意,因?yàn)樗麄兞牡?,關(guān)于這個(gè)品牌的歷史文化等等其實(shí)都是虛構(gòu)出來(lái)的。

△ 各行業(yè)的大咖介紹「chalie vice」品牌「歷史」短片《who is 「chalie vice」》| ©?小山薰堂

△ 伊勢(shì)百貨商場(chǎng)「chalie vice」實(shí)體店 | ©?小山薰堂

幸福策劃術(shù)

策劃是什么,小山薰堂認(rèn)為凡是幫助我們度過(guò)人生各種困難的方法,都可以稱(chēng)之為策劃。策劃現(xiàn)在還有沒(méi)有人做,他覺(jué)得對(duì)于策劃,需要衡量?jī)蓚€(gè)問(wèn)題:

  • 作為一個(gè)策劃師,你感到快樂(lè)嗎?
  • 可以使誰(shuí)感到幸福?

解決了這兩個(gè)問(wèn)題,就可以成為一名合格的設(shè)計(jì)師。

小山薰堂是一個(gè)擅長(zhǎng)制造驚喜的策劃師,也有劇作家,電臺(tái)主持人,企業(yè)顧問(wèn)等多重身份。他不拘泥于某一領(lǐng)域,并且在每一領(lǐng)域中都可以做得很好。最近幾年他就把很大的精力投入到「湯道」中去,熱衷于泡湯的他覺(jué)得泡湯文化不僅僅可以在日本流行,他也可以讓全世界都喜歡上泡湯。

他有著無(wú)限的活力和對(duì)生活的細(xì)心觀察。也有著日本人對(duì)于每一件事追求的態(tài)度,從舉世聞名的熊本熊,由生日驚喜而誕生的新品牌「Chalie Vice」,到近幾年一直推廣湯道文化,他總是從讓人感到驚喜、幸福的角度去考慮一個(gè)策劃案,并且結(jié)果也常常讓人感到幸福,正如他最后總結(jié)的,「作為一個(gè)設(shè)計(jì)師,作品能讓人感到幸福,那就是最大的幸福」。

△ 小山薰堂的湯道品牌「湯道百選」 | ©?小山薰堂

「MODESTY」謙遜

李虎的分享主題是《建筑何為》,他覺(jué)得,現(xiàn)在是全球連接的時(shí)代,前所未有的聯(lián)系卻又離合,是一個(gè)創(chuàng)造力與破壞力同時(shí)存在的時(shí)代,雖然信息交流方便了,但是這個(gè)時(shí)代有一堵「新的墻」正在壘砌,貧富差距,欲望擴(kuò)張,圖像時(shí)代,環(huán)境破壞,正逐漸把這個(gè)時(shí)代的人隔開(kāi)了,這也是一個(gè)極度消費(fèi)的時(shí)代,所以他覺(jué)得,作為一個(gè)建筑設(shè)計(jì)師,對(duì)于這個(gè)時(shí)代,必須懂得「modesty謙遜」。

△ 美國(guó)《國(guó)家地理》雜志六月刊封面

「謙遜」意味著節(jié)制,有意識(shí)的建造,建造得恰到好處,不多不少。

「謙遜」意味著包容,意味著通過(guò)建造來(lái)打破屏障,連接人與人,消除差距、重構(gòu)社會(huì)。

「謙遜」意味著保護(hù),通過(guò)建筑來(lái)創(chuàng)造一個(gè)人與自然的庇護(hù)所。

「謙遜」意味著尊重,帶著對(duì)當(dāng)?shù)丨h(huán)境的尊重去建造,無(wú)論是場(chǎng)地周?chē)匀画h(huán)境、它的歷史,或是當(dāng)?shù)鼐幼〉娜巳骸?

「謙遜」意味著謙卑,以一種真實(shí)反映我們?cè)谑澜缰兴幬恢玫姆绞饺ソㄔ?。我們不過(guò)是龐大網(wǎng)絡(luò)中的其中一部分。

「謙遜」意味著遠(yuǎn)離虛榮的自由,建筑不僅是流于表面的美學(xué),而是去追求深度的意義。只有做到這一點(diǎn)我們才能真正重新?lián)碛杏職?,去想象、去探險(xiǎn),并且回歸詩(shī)意。

但他也強(qiáng)調(diào),「謙遜」并不意味著建筑是無(wú)力的。

在他的案例分享中提到上海油管藝術(shù)中心的項(xiàng)目,這是一批位于上海徐匯濱江原龍華機(jī)場(chǎng)舊址的廢棄儲(chǔ)油罐,以及一些消防水池和配套設(shè)施。是一段歷史的記憶。他希望能保留下這一批歷史的見(jiàn)證建筑,所以在建筑設(shè)計(jì)上完全保留著這五個(gè)超大的儲(chǔ)油罐外觀,并對(duì)內(nèi)部功能進(jìn)行合理的劃分,具體劃分為一個(gè)油管保留原始風(fēng)貌,幾乎不對(duì)其進(jìn)行任何的加工和改造,保留其原始質(zhì)感和構(gòu)造,可作為大型藝術(shù)作品的展示。一個(gè)在內(nèi)部進(jìn)行改造,增設(shè)平面展示墻,使其適用于精致藝術(shù)品的展示。剩下的三個(gè)被改造為多功能的展廳和活動(dòng)休閑空間。

△ 五個(gè)油管的功能劃分 | ©?OPEN ARCHITECTURE

李虎在改造中,加入了一個(gè)「超級(jí)表面」的概念,通過(guò)營(yíng)造一片「都市森林」,將油管鏈接起來(lái),使其融入到整片森林中去,這也給上海繁忙的都市中增加一片適合公眾親近自然并且可以感受當(dāng)代藝術(shù),提升城市生活品質(zhì)的綠地?!赋?jí)表面」重新建立公眾和城市藝術(shù)自然的關(guān)聯(lián)。

△ 「超級(jí)表面」 | ©?OPEN ARCHITECTURE

李虎在城市建筑改造中,時(shí)常會(huì)考慮到公眾和自然、建筑的關(guān)系,他在深圳坪山新區(qū)劇院的項(xiàng)目中,為了有別與其他城市的千篇一律,遠(yuǎn)離公眾的劇院,提出了「演藝建筑的一種新的可能」概念,通過(guò)「空間敘事」的方式,區(qū)分建筑功能「正式與非正式」,也是使得公眾可以融入到劇院建筑中,并且根據(jù)深圳的氣候設(shè)計(jì)了劇院的綠化工程,使得劇院與公眾與自然都可以得到一個(gè)很好的共處。

△ 深圳坪山演藝中心 | ©?OPEN ARCHITECTURE

「UCCA Dune Art Museum」沙丘美術(shù)館

在最后,李虎還分享到在中國(guó)北部渤海灣昌黎縣一段被稱(chēng)作黃金海岸的沙灘上,OPEN 設(shè)計(jì)了一座埋在沙子底下的美術(shù)館──UCCA Dune Art Museum(沙丘美術(shù)館)。他提到,隨著社會(huì)的發(fā)展,人類(lèi)生存空間不斷的蠶食地皮,沙丘作為一種地理自然地貌,已經(jīng)越來(lái)越少能看見(jiàn)了。但是接到的這個(gè)項(xiàng)目就是需要在沙丘上建造一座美術(shù)館,這肯定會(huì)對(duì)沙丘有很大的破壞,他希望可以在這矛盾的兩者中找到一種平衡,最后,他在海邊玩泥沙的小朋友身上得到啟發(fā),何不讓美術(shù)館以「洞穴」的形態(tài)埋在沙丘之下,這是對(duì)自然的一種尊重,也是對(duì)沙丘的一種保護(hù),因?yàn)樯城鹈佬g(shù)館的存在,這片沙丘將永遠(yuǎn)不會(huì)人為「被推平」。

李虎還從當(dāng)?shù)卦齑竟ど砩系玫絾l(fā),因?yàn)槊佬g(shù)館的造型特別的復(fù)雜,所以用到造船的技術(shù),通過(guò)用木模板等小尺度線性材料手工編織出的模板定型,再用混凝土澆灌成型,并且還在建筑內(nèi)部保留了混凝土因?yàn)槟景鍧补嗔粝碌牟灰?guī)則的肌理。希望讓木工建造的痕跡可以被每一個(gè)進(jìn)入美術(shù)館的人感知和觸摸。

△ 將造船術(shù)應(yīng)用在建筑中 | ©?OPEN ARCHITECTURE

△ 建筑軀殼 | ©?OPEN ARCHITECTURE

△ 建筑覆蓋上土后 | ©?OPEN ARCHITECTURE

△ 內(nèi)部大量保存原始手工痕跡 | ©?OPEN ARCHITECTURE

因?yàn)槭窃诤_叄诿佬g(shù)館的造型上,會(huì)留出很多的大小不一的洞口,每一個(gè)洞口望出去,都是大海不一樣的風(fēng)景,讓人在美術(shù)館中可以感受到不同畫(huà)面切割的海景,并且因?yàn)榻ㄖ宦裨谏匙又?,冬夏的溫度得到很好的調(diào)節(jié),使得建筑非常節(jié)能,保證了建筑的可持續(xù)性,而巧妙的天窗開(kāi)口,更是為美術(shù)館提供全天候的自然采光。

△ 內(nèi)部開(kāi)口設(shè)計(jì),保證了采光和觀賞性 | ©?OPEN ARCHITECTURE

李虎是一位「詩(shī)意」的設(shè)計(jì)師,在他的作品中,可以處處體現(xiàn)人、自然與建筑之間的和睦相處,建筑不再是冰冷的存在,他可以被感知被「融入」,這是他對(duì)自然的敬畏,也是對(duì)「謙卑」最好的詮釋。

不論是小山薰堂對(duì)于使人感到幸福驚喜的策劃術(shù),還是李虎對(duì)于現(xiàn)代建筑的思考和態(tài)度,他們都考慮到人和社會(huì)、自然的關(guān)系,正如小山薰堂在最后分享的一張他在紐約街頭拍到的一個(gè)流浪漢在地上貼的「I LIKE SURPRISES」。人們都喜歡驚喜和快樂(lè),這是能讓人感到幸福的東西,他們讓策劃不再是按部就班的一套流程,建筑也不再是一棟冰冷的建筑,他們有溫度、有情感,都可以使得所接觸到的人感到幸福和快樂(lè),引發(fā)人們對(duì)于人與社會(huì)、自然的思考。他們應(yīng)該是這個(gè)時(shí)代,一個(gè)合格設(shè)計(jì)師的標(biāo)準(zhǔn)和榜樣。

藍(lán)藍(lán)設(shè)計(jì)sillybuy.com )是一家專(zhuān)注而深入的界面設(shè)計(jì)公司,為期望卓越的國(guó)內(nèi)外企業(yè)提供卓越的UI界面設(shè)計(jì)、BS界面設(shè)計(jì)  cs界面設(shè)計(jì) 、 ipad界面設(shè)計(jì) 、 包裝設(shè)計(jì) 、 圖標(biāo)定制 、 用戶(hù)體驗(yàn) 、交互設(shè)計(jì)、 網(wǎng)站建設(shè) 、平面設(shè)計(jì)服務(wù)。

Vue.js 學(xué)習(xí)日志(一)

seo達(dá)人

如果您想訂閱本博客內(nèi)容,每天自動(dòng)發(fā)到您的郵箱中, 請(qǐng)點(diǎn)這里


<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title>Vue 測(cè)試實(shí)例</title>
<script src="../static/vue.min.js"></script>
</head>
<body>
<div id="vue_data">
<h1>title : {{title}}</h1>
<h1>url : {{url}}</h1>
<h1>{{info()}}</h1>
</div>
<script type="text/javascript">
var vm = new Vue({
el: '#vue_data',
data: {
title: "Vue.js",
url: "https://cn.vuejs.org"
},
methods: {
info: function() {
return  this.title + " - 堅(jiān)持學(xué)習(xí)!";
}
}
})
</script>
</body>
</html>
1、每個(gè)Vue應(yīng)用都需要實(shí)例化Vue來(lái)實(shí)現(xiàn)

var vm = new Vue({
    //*******
})
2、el參數(shù)

在上面實(shí)例中的id為vue_data,在div元素中:

<div id="vue_data"></div>
意味著所有的改動(dòng)均在這個(gè)id為vau_data的div中,外部不受影響。

3、定義數(shù)據(jù)對(duì)象

data用于定義屬性,在上述實(shí)例中有2個(gè)屬性,分別為:title、url。

methods用于定義函數(shù),可以通過(guò)return來(lái)返回函數(shù)值。

{{ }}用于輸出對(duì)象屬性和函數(shù)返回值。

當(dāng)一個(gè)Vue實(shí)例創(chuàng)建時(shí),Vue的響應(yīng)系統(tǒng)加入了data對(duì)象中能找到的所有屬性。當(dāng)這些屬性的值發(fā)生改變時(shí),html視圖也會(huì)產(chǎn)生相應(yīng)的變化。

<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title>Vue 測(cè)試實(shí)例</title>
<script src="../static/vue.min.js"></script>
</head>
<body>
<div id="vue_data">
<h1>title : {{title}}</h1>
<h1>url : {{url}}</h1>
</div>
<script type="text/javascript">
//數(shù)據(jù)對(duì)象
var data = {title: "Vue.js",url: "https://cn.vuejs.org"}
var vm = new Vue({
el: '#vue_data',
data: data
})

//設(shè)置屬性會(huì)影響到原始數(shù)據(jù)
vm.title = "spring";
document.write(data.title + "<br>");

//同樣
data.url = "https://spring.io";
document.write(vm.url);
</script>
</body>
</html>
Vue還提供了實(shí)例屬性與方法,以前綴$與用戶(hù)定義的屬性區(qū)分開(kāi)來(lái)。

document.write(vm.$data === data) // true

藍(lán)藍(lán)設(shè)計(jì)sillybuy.com )是一家專(zhuān)注而深入的界面設(shè)計(jì)公司,為期望卓越的國(guó)內(nèi)外企業(yè)提供卓越的UI界面設(shè)計(jì)、BS界面設(shè)計(jì) 、 cs界面設(shè)計(jì) 、 ipad界面設(shè)計(jì) 、 包裝設(shè)計(jì) 、 圖標(biāo)定制 、 用戶(hù)體驗(yàn) 、交互設(shè)計(jì)、 網(wǎng)站建設(shè) 平面設(shè)計(jì)服務(wù)。

數(shù)據(jù)可視化大屏設(shè)計(jì)經(jīng)驗(yàn)分享

資深UI設(shè)計(jì)者

 

如果您想訂閱本博客內(nèi)容,每天自動(dòng)發(fā)到您的郵箱中, 請(qǐng)點(diǎn)這里

前言 



說(shuō)起數(shù)據(jù)可視化設(shè)計(jì),如今絕對(duì)是熱門(mén)的設(shè)計(jì)之一,而真正懂?dāng)?shù)據(jù)可視化設(shè)計(jì)的設(shè)計(jì)師卻不多,隨著大數(shù)據(jù)產(chǎn)業(yè)的蓬勃發(fā)展,很多企業(yè)都開(kāi)始應(yīng)用數(shù)據(jù)可視化。很多UI設(shè)計(jì)師突然會(huì)接到公司數(shù)據(jù)可視化設(shè)計(jì)的需求,如果不了解數(shù)據(jù)可視化的設(shè)計(jì),那么肯定是一頭霧水,不知從何入手。


什么是數(shù)據(jù)可視化?

數(shù)據(jù)可視化主要旨在借助于圖形化手段,清晰有效地傳達(dá)與溝通信息。簡(jiǎn)而言之就是把枯燥無(wú)味的數(shù)據(jù),通過(guò)圖形化設(shè)計(jì)表現(xiàn),達(dá)到一種更加精準(zhǔn)和的數(shù)據(jù)分析和表達(dá)。


下面要跟大家分享的是,我經(jīng)手的一個(gè)真實(shí)數(shù)據(jù)可視化大屏項(xiàng)目改版,接下來(lái)會(huì)分享給大家一套全面的數(shù)據(jù)可視化技法,包括科學(xué)的運(yùn)用圖表、運(yùn)用色彩、把控?cái)?shù)據(jù)層級(jí)以及視覺(jué)層級(jí),達(dá)到美學(xué)形式與功能需要齊頭并進(jìn)。



 案例解析 


首先看下線上舊版的設(shè)計(jì),分析存在的問(wèn)題。


undefined


問(wèn)題

1、左側(cè)大面積文字導(dǎo)致視覺(jué)不平衡,且密集

2、整體用色暗淡,圖表用色沒(méi)有規(guī)則

3、圖表運(yùn)用不恰當(dāng),不能有效傳達(dá)數(shù)據(jù)信息

4、缺標(biāo)題,數(shù)據(jù)信息優(yōu)先級(jí)排列不恰當(dāng)


結(jié)合這些問(wèn)題作出了改版,


undefined


因?yàn)槭歉陌嫠阅軌蚩吹骄€上真實(shí)的數(shù)據(jù)信息,這樣舊版的數(shù)據(jù)呈現(xiàn)就能給到重要的設(shè)計(jì)參考價(jià)值,例如能夠知道TOP10熱門(mén)關(guān)鍵字大概是幾個(gè)字,在設(shè)計(jì)圖表時(shí)就會(huì)依據(jù)字?jǐn)?shù)的長(zhǎng)短來(lái)參考設(shè)計(jì),也可以知道是否有極端數(shù)據(jù),從而運(yùn)用更適合的圖表呈現(xiàn)等等。


下面依次對(duì)照新改的版本,解決舊版出現(xiàn)的問(wèn)題。


問(wèn)題一:

1、左側(cè)大面積文字導(dǎo)致視覺(jué)不平衡,且密集


undefined


注解:

由于左半部分有大篇幅的文字,視覺(jué)上會(huì)顯得密集,容易視覺(jué)疲勞,右半部分大面積的色塊圖表使得整個(gè)界面視覺(jué)上不平衡。


解決方案就是在把文字用排行榜圖形分開(kāi),放到文字中間部分,這樣就豐富了只有文字的單調(diào)設(shè)計(jì),整體視覺(jué)較為平衡和諧,并且這樣還能夠突出強(qiáng)調(diào)重要數(shù)據(jù)信息。



問(wèn)題二:

2、整體用色暗淡,圖表用色沒(méi)有規(guī)則



undefined


注解:

提取舊版的顏色,色彩很暗淡,對(duì)于深色背景來(lái)說(shuō),這樣的配色方式并不會(huì)有好的視覺(jué)表現(xiàn)。


暗色背景通常用高飽和高明度的顏色,對(duì)比暗色背景更能聚焦視覺(jué),突出數(shù)據(jù)可視化的表現(xiàn),亮麗的色彩能夠讓數(shù)據(jù)可視化設(shè)計(jì)的更加絢麗。


數(shù)據(jù)可視化大屏設(shè)計(jì)慎用大面積的漸變色,小面積可嘗試,一般大屏都是拼接屏,品牌不一樣色差會(huì)表現(xiàn)不一,所以初稿出來(lái)后可以先去大屏上看下效果。



undefined


注解:

圖表用色沒(méi)有規(guī)則,上圖三個(gè)圖表都表現(xiàn) “正面” “中立” “負(fù)面” 三個(gè)維度數(shù)據(jù)信息,但在用色上沒(méi)有一個(gè)統(tǒng)一的規(guī)則,例如三個(gè)圖表中黃色分別代表不同的維度信息,這樣就無(wú)法建立觀者的認(rèn)知。




undefined


“負(fù)面”有警示的作用,運(yùn)用紅色調(diào)較為合理,“中立”色彩情緒上適合黃色調(diào),黃色會(huì)給人中性的感受,例如馬路上的等待的黃燈,例如一片樹(shù)葉從綠色到黃色再到枯萎灰色,給人一種過(guò)程中的中立情緒感受等,“正面”就是給人積極的一面,所以綠色或者主題色藍(lán)色都是很恰當(dāng)?shù)摹?



問(wèn)題三:

3、圖表運(yùn)用不恰當(dāng),不能有效傳達(dá)數(shù)據(jù)信息


undefined


注解:

同一個(gè)界面中左側(cè)文字TOP10屬性類(lèi)似的“核心媒體TOP10”展示形式最好能有共性。舊版運(yùn)用了柱狀圖并不恰當(dāng),尤其是標(biāo)題字?jǐn)?shù)過(guò)多時(shí)候并不推薦使用柱狀圖文字傾斜的展示方式,改版后加上相同的排行榜圖標(biāo),數(shù)據(jù)直接展示出來(lái),TOP10的效果會(huì)更好。



undefined


注解:

數(shù)據(jù)需要對(duì)比分析,顯然這個(gè)玫瑰圖表并不能很好的說(shuō)明對(duì)比,每個(gè)維度大小排列沒(méi)有規(guī)律,實(shí)際數(shù)據(jù)分布不均勻,導(dǎo)致沒(méi)有對(duì)比的效果,改版后突出總的數(shù)據(jù),用條形圖從大到小依次排列各維度數(shù)據(jù),數(shù)據(jù)上有對(duì)比,視覺(jué)上更有主次。

undefined


注解:

首先是舊版用色不恰當(dāng),最嚴(yán)重的問(wèn)題是圖表上沒(méi)有任何數(shù)據(jù),因?yàn)檎故拘偷拇笃?,很少有交互行為,這樣的設(shè)計(jì)是不可取的,不能讓觀者去猜百分比數(shù)據(jù),數(shù)據(jù)可視化就要用圖表數(shù)據(jù)的形式展示出來(lái)最直接的信息,除非是展示趨勢(shì)并不是準(zhǔn)確的數(shù)據(jù)。



undefined


注解:

舊版用的條形堆積圖,其實(shí)更適合百分比數(shù)據(jù)的對(duì)比呈現(xiàn),一個(gè)維度下面有若干個(gè)子項(xiàng),比較適合分組柱狀圖(新改版為分組柱狀圖)或者分組條形圖更為恰當(dāng)。



undefined


注解:

舊版色彩搭配不和諧,趨勢(shì)圖需要突出趨勢(shì)線,而不是體現(xiàn)數(shù)據(jù)的面積,紅框注釋不夠直接尤其在顏色過(guò)多時(shí),更不好分辨各個(gè)顏色指向的維度,新版的設(shè)計(jì)則能夠準(zhǔn)確指出各個(gè)維度的趨勢(shì)線。



問(wèn)題四:

4、缺標(biāo)題,數(shù)據(jù)信息優(yōu)先級(jí)排列不恰當(dāng)


undefined


注解:

新聞的標(biāo)題跟轉(zhuǎn)發(fā)數(shù)才是觀者關(guān)注的,而來(lái)源和時(shí)間就是次要關(guān)注信息,所以視覺(jué)上要為觀者分出層級(jí),這樣不僅能夠使觀者看著更舒適,視覺(jué)上也很有層次,不雜亂。


舊版標(biāo)題、來(lái)源、時(shí)間、轉(zhuǎn)發(fā)數(shù)、都是相對(duì)于內(nèi)容居中的狀態(tài),這種排版是不符合表格排版規(guī)則的,簡(jiǎn)單的做法就是文字左對(duì)齊,數(shù)字右對(duì)齊,數(shù)字右對(duì)齊能夠更快速識(shí)別數(shù)據(jù)量大小,跟其他數(shù)據(jù)的對(duì)比,文字左對(duì)齊則是根據(jù)人從左到右的閱讀習(xí)慣。


之前專(zhuān)門(mén)總結(jié)過(guò)一篇數(shù)據(jù)表格如何排版的文章,想了解的朋友,文章下面有數(shù)據(jù)可視化系列文章鏈接。



undefined


注解:

設(shè)計(jì)數(shù)據(jù)可視化大屏?xí)r一定要考慮用戶(hù)瀏覽數(shù)據(jù)的優(yōu)先級(jí)的構(gòu)架,例如要遵循先總后分,先具體后抽象的邏輯,上圖舊版把趨勢(shì)放到了頁(yè)面的第一視覺(jué)位置,就有點(diǎn)宣兵奪主了,根據(jù)先具體后抽象,改版后具體數(shù)據(jù)放到第一視覺(jué)位置,趨勢(shì)信息排后。


舊版大屏沒(méi)有標(biāo)題,我是誰(shuí)?我在干什么?我要去哪里?所以標(biāo)題務(wù)必得有。


總結(jié):

說(shuō)了這么多設(shè)計(jì)要點(diǎn),新手可能還是不知道設(shè)計(jì)的切入點(diǎn)在哪里,所以總結(jié)一個(gè)數(shù)據(jù)可視化設(shè)計(jì)分三步走法。


第一步:了解數(shù)據(jù)要表達(dá)的本質(zhì)。

拿到一組數(shù)據(jù),先分析主次,這組數(shù)據(jù)要表達(dá)什么?是展示數(shù)據(jù),還是對(duì)比數(shù)據(jù),或是實(shí)時(shí)監(jiān)控?cái)?shù)據(jù),從而確定展示的優(yōu)先級(jí)。


第二步:確定使用圖表。

通過(guò)了解數(shù)據(jù)要表達(dá)的本質(zhì)后,選擇適合他的圖表,這時(shí)候就需要打開(kāi)幾個(gè)開(kāi)源的圖表網(wǎng)站找圖表,記住你的圖表用的是網(wǎng)站的哪一個(gè),開(kāi)發(fā)如果找不到就丟給他網(wǎng)址。

網(wǎng)站有:Fusion Design、螞蟻數(shù)據(jù)可視化-AntV、ECharts Examples、Highcharts


第三步:整體效果調(diào)整

功能性的數(shù)據(jù)展示都沒(méi)問(wèn)題,還要看下整體效果,例如用了過(guò)于多的柱狀圖,可能就會(huì)影響了整體的美感,圖表盡可能多樣性,數(shù)據(jù)表達(dá)信息就要用不同的圖表展示。




 最后 


數(shù)據(jù)可視化設(shè)計(jì)核心就是,通過(guò)美學(xué)設(shè)計(jì)形式把數(shù)據(jù)精準(zhǔn)和的分析和表達(dá)。


數(shù)據(jù)可視化設(shè)計(jì)是目前較為熱門(mén)的設(shè)計(jì)工種,通過(guò)本文分享的項(xiàng)目迭代案例,希望能夠讓你對(duì)數(shù)據(jù)可視化有些許了解。

設(shè)計(jì)的法則【交互篇】

ui設(shè)計(jì)分享達(dá)人

如果您想訂閱本博客內(nèi)容,每天自動(dòng)發(fā)到您的郵箱中, 請(qǐng)點(diǎn)這里

讓設(shè)計(jì)更有說(shuō)服力

日歷

鏈接

個(gè)人資料

存檔