2016年7月17日 星期日

HTML - Note3: CSS(2)

CSS可以做到以下:

*改變字體、顏色、大小
h1 {
  font-size: 32px;
  font-family: Palatino, 'Palatino Linotype', serif;
  color: #2e69a3;
}

*新增/ 調整背景圖
background-image: url("https://s3.amazonaws.com/codecademy-content/projects/make-a-website/lesson-2/bg.jpg");

*改變整個class的風格(字體顏色大小)
index.html裡面:
  <div class="hero">
        <h2>Sprout.</h2>
        <p>A book by J. Daniel Bedford</p>
        <a href="#">Read now.</a>
  </div>

css裡面:
.hero {
  padding: 250px 0;
  margin: 30px;
  background-size: cover;
  color: #ffffff;
}


*以#跟賦予id的方式來改變特定元素的風格,而其他同類的不變
(在index.html裡面)  <p id="footer">&copy; Mystwood Publishers Limited</p>
(在CSS裡面)#footer { font-size: 0.75rem; color: red; }



HTML - Note2: CSS


CSS是一種方便的語法,來組織網頁元素的風格,我用Codecademy的截圖來說明它的能力:

左邊是HTML檔,先把CSS的呼叫註解起來的樣子



呼叫了CSS描述檔之後,效果如下圖:

在main.css檔中,可以看到各種的元素風格定義方式:





































所以把視覺風格跟網頁內容配置,分開來定義,就是這樣的感覺。


HTML - Note1

我個人感覺,一個以視覺主導思維的設計師或藝術家,在訓練過程已很習慣拿熟悉的元素作拼貼;
而在學習HTML時,這些拼貼的元素會變成一行行程式碼,經過練習後,設計網站就像在拼貼這些程式碼;到了CSS的時候,會把“拼貼”跟“設計”這兩項工作分開,過程上更有效率,上手的人會用「強大」來形容它的能力,但這也是從“物理世界”轉換到“工程思維”的階段,對藝術家是個大挑戰。


Div element:

Div elements divide your page by enclosing other elements. These enclosed groups of elements can then be organized, moved and styled independently from one another.

<div class="main"> ...</div>

它是用來分割網頁元素,以群組方式歸類,要調整位置與風格時,就一次處理整個Div


Metadata processes:
像是網頁的腦袋,因為它們溝通、傳遞訊息,但是使用者看不到。
<!DOCTYPE html> // Tells the web browser to expect an HTML document.
<html>...</html> // The root of the HTML document and parent of all other HTML elements on the webpage.
<head>...</head> // Enclose other metadata about the site, such as its title.
<title>...</title> // Contains the site's title, which is one way users can find your site through a search engine, like Google.
<meta charset="utf-8”/> // Tells the web browser which character set to use. In this case, the character set is "utf-8".

CSS:
stands for cascading style sheets, and is used to style HTML elements. 用層疊的概念做網頁元素的風格設計。

HTML elements:
* h1-h6: <h1>Heading</h1>  數字越小,字越大,通常用在標頭
* p: <p>Description of company here.</p>在標頭以外,文章或描述片段的時候使用
* a: <a href="http://codecademy.com">Click here</a> to learn how to make a website! a是Anchor(錨)的縮寫,用在外部網頁連結上
* img: <img src="https://images.com/favorite.png> 使用圖片元素
* video: 影片
* unordered list:
<ul>
<li>list item</li>
<li>another item</li>
<li>yet another</li>
</ul> // 未排序的清單
* div: 拿來整理所有HTML元素並且使用class的屬性,並且需取名字
<div class="main">
<h2>Subheading!</h2>

</div>

2016年7月12日 星期二

RaspBerry Pi 3 - Note 1 初始設定紀錄

<RaspBerry Pi 3的撞牆記>

我犯了幾個錯:
1. 插上記憶卡就接上電源螢幕沒反應,以為電流不夠大
2. 記憶卡也沒完全格式化就裝OS,沒有反應
3. 用Mac的terminal裝OS,看不到進度條,一個多小時過後直接拔
4. 用5V 1.2A電源,不夠力
5. 再用Windows重裝幾次,拔插幾次,SD就GG了

這邊整理一下正確的方式:
0. 下載好OS的映像檔 (樹莓派官網上Download頁的NOOBS或RASPBIAN, 解壓)
1. 器材準備好(Pi 3, 螢幕+HDMI線, 網路線, Micro USB 5V 2A變壓器跟線都要夠力, Micro SD & 讀卡機, 無線鍵鼠K270+M185)
2. 必要!下載免費軟體 SD Formatter,把SD卡清除乾淨
3. 下載免費軟體 Win32 Disk Manager,SD卡>讀卡機>電腦,它會抓SD來源,然後選OS映像檔來源,點選"write"寫入
4. 跑完後安全退出SD卡,插進RB Pi3,確認HDMI線、網路線、無線鍵鼠接好
5. 接上Micro USB電源,就會自動開機了,RB Pi3沒有電源鍵

這樣就可以真正開始玩樹莓派了,呼~

然後上面的東西我花了一天才搞定@_@|||



設定用VNC遠端控制的方式,參照趙老師的這篇:

參考這個設定開機即開啟VNC


蠻方便的,除了開機即開之外,還試了用Android手機遠端控制,很方便!



2016年7月11日 星期一

AngularJS - Note1 & 近況

這裡有一陣子沒有更新了,後來我把教學書上兩個遊戲(圍住貓 & 橫向卷軸移動跳躍)跟著書實作完。而五月初時我體驗到了VR(HTC Vive)很受感動,決定投入開發,加上一些機緣接觸到IOT的起點,就開始玩Arduino,這些過程我PO在另一個與友人的共同blog,內容比較多圖像、視覺跟實體互動,連結如下:

JB-Dummies:
https://jbdummies.wordpress.com/


然後我現在除了Maker的東西 (七月底要去上海參加Maker活動),同時也在自學AngularJS和HTML、JavaScript,Codecademy上面學習的流程設計真的很不錯,繼續GO~



AngularJS - Note1

AngularJS是一種JavaScript的framework,能用來開發彈性化、好管理的網頁App,需要一點JavaScript跟Html基礎。我在Codecademy上學,目前進度到Unit 2 (2/5) 的50%。


接下來程式碼示範的網頁如下圖所示:


我把裡面有關資料的三個檔案view拼在一起,從以下兩張圖對照看,左下是Html,左上是定義資料型別的規則,右邊是資料存放的地方。把三個東西拆開,就很方便做管理。

例如說,不管我想新增幾筆資料,在右方的檔案新增就好,如果我想移動顯示的位置,

修改左下方檔案的code就好。

“Directive是AngularJS中一個很像自訂標籤的東西,有很客製化的彈性可以設定要讀取的資料型態”
以上是我目前的理解,還在跟著段落code一點一點感受中... ^_^|||

在Directive裡面的7/8,我開始靈魂游離,覺得應該要再多看一點HTML的東西,這個章節結束後就開始吧= =

走完8/8,下面有個Directive的總結:
  • Directives are a powerful way to create self-contained, interactive components. Unlike jQuery which adds interactivity as a layer on top of HTML, AngularJS treats interactivity as a native component of HTML.

讓我們繼續 走下去。