顯示具有 CSS 標籤的文章。 顯示所有文章
顯示具有 CSS 標籤的文章。 顯示所有文章

2016年7月27日 星期三

Flexbox 教學



http://www.codes51.com/article/detail_1201476_1.html

Flexbox 完全指南
我不是这篇文章的原创作者,我只是好文章的搬运工。原文地址 A Complete Guide to Flexbox
应用于 flex container 的属性
display flex,flexbox,flexslider,flex布局,flexpaper,flex2,css flex,fitbit flex,holofle
display
该属性定义一个 flex container,根据不同取值定义为 inline 或 block 的 flex container。应用了该属性的元素为它的所有子元素创建了一个 flex context。
.container {
  display: flex; /* or inline-flex */
}
注意,CSS3 的多列布局对 flex 容器没有任何影响。
flex-direction
display flex,flexbox,flexslider,flex布局,flexpaper,flex2,css flex,fitbit flex,holofle
该属性建立主轴,规定了 flex container 中的 flex item 的排布方向。Flexbox 是一种单向布局概念,可以认为 flex item 都优先沿着水平行或竖直列布局。
.container {
  flex-direction: row | row-reverse | column | column-reverse;
}  
  • row (默认值): 在 ltr 上下文中为由左到右;在 rtl 上下文中为由右到左。
  • row-reverse : 在 ltr 上下文中为由右到左;在 rtl 上下文中为由左到右。
  • column : 与 row 类似,只不过是由上到下。
  • column-reverse : 与 row-reverse 类似,只不过是由下到上。
flex-wrap
display flex,flexbox,flexslider,flex布局,flexpaper,flex2,css flex,fitbit flex,holofle
默认情况下,所有的 flex item 都将尽量保持在一个 line (行或者列,下同)之内。可以通过这个属性让 flex item 在需要的情况下换行或者换列。这里,新行或新列从哪里开始由 flex-direction 决定。
.container{
  flex-wrap: nowrap | wrap | wrap-reverse;
}
  • nowrap (默认值): 单 line。在 ltr 上下文中为由左到右;在 rtl 上下文中为由右到左。
  • wrap : 多 line。在 ltr 上下文中为由左到右;在 rtl 上下文中为由右到左。
  • wrap-reverse : 多 line。在 ltr 上下文中为由右到左;在 rtl 上下文中为由左到右。
flex-flow
该属性为 flex-direction 和 flex-wrap 的简写属性,同时定义了 flex container 的主轴和交叉轴。默认值为 row nowrap。

2014年8月19日 星期二

DIV表格繪製


如何使用 CSS 格線建立調適型配置
http://msdn.microsoft.com/zh-tw/library/jj553856(v=vs.85).aspx

表格的欄位為什麼不對齊

CSS:DISPLAY




)
)
)
)
)
)
ValueDescription
blockElement is rendered as a block-level element
compactElement is rendered as a block-level or inline element. Depends on context
inheritThe value of the display property is inherited from parent element
inlineElement is rendered as an inline element. This is default
inline-blockElement is rendered as a block box inside an inline box
inline-tableElement is rendered as an inline table (like
), with no line break before or after the table
list-itemElement is rendered as a list
markerThis value sets content before or after a box to be a marker (used with :before and :after pseudo-elements. Otherwise this value is identical to "inline")
noneElement will not be displayed
run-inElement is rendered as block-level or inline element. Depends on context
tableElement is rendered as a block table (like
), with a line break before and after the table
table-captionElement is rendered as a table caption (like
)
table-cellElement is rendered as a table cell (like and )
table-columnElement is rendered as a column of cells (like
table-column-groupElement is rendered as a group of one or more columns (like
table-footer-groupElement is rendered as a table footer row (like
table-header-groupElement is rendered as a table header row (like
table-rowElement is rendered as a table row (like
table-row-groupElement is rendered as a group of one or more rows (like



HTML 4.01 快速導覽 - 表格
http://pydoing.blogspot.tw/2011/06/html-trtd.html
最簡單的表格就是在 只使用 與 是列,

兩個標籤,
則是欄

的屬性如下
屬性Deprecated or Obsolete
alignleft
center
right
justify
char
Deprecated in HTML 4.01, Obsolete in HTML 5
bgcolor#RRGGBBDeprecated in HTML 4.01, Obsolete in HTML 5
char依 align 設定Deprecated in HTML 4.01, Obsolete in HTML 5
charoff依 align 設定Deprecated in HTML 4.01, Obsolete in HTML 5
valignbaseline
bottom
middle
top
Deprecated in HTML 4.01, Obsolete in HTML 5



的屬性如下

屬性Deprecated or Obsolete
abbrObsolete in HTML 5
alignleft
center
right
justify
char
Deprecated in HTML 4.01, Obsolete in HTML 5
axisObsolete in HTML 5
char依 align 設定Deprecated in HTML 4.01, Obsolete in HTML 5
charoff依 align 設定Deprecated in HTML 4.01, Obsolete in HTML 5
colspan垂直擴展格數
headers
rowspan水平擴展格數
scopeObsolete in HTML 5
valignbaseline
bottom
middle
top
Deprecated in HTML 4.01, Obsolete in HTML 5

CSS DIV 區塊標籤的使用教學
http://www.wibibi.com/info.php?tid=112

修改 HTML Table 表格內的文字大小與顏色
http://www.webtech.tw/info.php?tid=88

如何用div+css實現可往下+往右延伸的表格?

http://blog.sina.com.tw/joyhsu_works/article.php?entryid=600782

HTML與CSS練習

http://mepopedia.com/forum/read.php?804,43670



2014年8月12日 星期二

CSS線上製作



http://isvincent.pixnet.net/blog/post/34357927-css%E7%A8%8B%E5%BC%8F%E7%A2%BC%E7%B7%9A%E4%B8%8A%E7%94%A2%E7%94%9F%E5%99%A8

(1) CSS選單產生器
這個網站可以產生各種CSS選單,有下拉式、水平、垂直等樣式。透過自訂效果後,可以產生一個HTML和CSS程式碼的壓縮檔,下載後再套用到自己的網頁上。
(2) CSS背景色彩產生器
透過線上點選樣式後,再自訂色彩及漸層效果,即可複製右方的CSS程式碼,即可套用到網頁中。
(3) 圓角邊框產生器
選取一種樣式後,設定框線粗細及色彩後,即可產生程式碼及所需的圖片檔,而圖片檔需一個一個自行下載,搭配HTML和CSS的程式碼,即可套用至網頁中。
(4) CSS按鈕產生器
直接在網頁上設定效果,再由[Code]標籤下複製Head code和Button code,直接套用在網頁上使用。
線上表單產生器
網站名稱:JotForm
網站鏈結:http://www.jotform.com/ 免費註冊 

http://www.izzymenu.com/build.php?mid=108






2014年7月2日 星期三

RESPONSIVE WEB DESIGN 簡單介紹與優缺點、實作入門

http://fundesigner.net/responsive-web-design-explain/

這一兩年中最夯的網頁設計不外乎就是 Responsive Web Design 了,中文譯名為「自適應網頁設計」(不過這個名稱仍然不太好),就字面上意思來說就是當一個網頁在不同的解析度下,會呈現不同的介面,也就是在不同的介面上適應。會這麼熱門的原因是,這幾年來隨著 Smart Phone、Tablet 等行動裝置開始興起之後,有許多人都開始使用行動裝置來閱讀網頁。而傳統的網頁只有為傳統PC 做設計的動作,在行動裝置上並不能呈現最好的效果,所以就有了 Responsive Web Design 這個網頁設計新名詞。

什麼是 Responsive Web Design?

簡單來說,就是讓一個網頁在 PC、Mobile 上都可以有好的瀏覽效果,而這個我們就稱為 Responsive Web Design。
如以下的例子,我們用 Smashing Magazine 的網站來做示範:

傳統 PC 瀏覽器顯示

如下圖,如果是解析度較大如 1920*1080 的解析度,會有 4 欄來豐富網頁版面,增強效果。
2

Mobile 手機上顯示

因為手機的解析度比起傳統 PC 小很多,所以顯示的方式只有顯示主要內容區了。
Photo 1
上面兩個顯示不同,但是卻是同一份 HTML 網頁,使用 CSS Media Query 做調整,就是 Responsive Web Design。
如果這個網站沒有做 Responsive Web Design,那他的顯示方法會和傳統 PC 一樣,造成 User 還要把網頁拉大才能閱讀。

為什麼要做 Responsive Web Design?

Responsive Web Design 在目前算是很新的一項設計,在台灣知道的人並不算太多,學校也沒有教。而做 Responsive Web Design 最大的目的是:
  • 因為越來越多人要用手機、平板來瀏覽網頁。
是的,Responsive Web Design 就是因為這樣而生的,為了要讓 手機、平板 的 User 有更好的體驗。

Responsive Web Design 的優缺點

優點:
  • 開發成本比 Native App 低因為 Responsive Web Design 通常可以直接用 Media Query 直接寫搭配行動裝置的 CSS ,與 Native App 的成本比較下來較低。
  • 不需要重寫 HTMLResponsive Web Design 不需要再重寫另一份 HTML ,直接使用 CSS 屬性來對不同裝置做調整即可。
  • 可以同時針對許多不同裝置分別調整通常做 都是利用 CSS3 的 Media Queries 方法來實現,而你可以使用這項 CSS 來對許多裝置做設計,不論是螢幕小到不行的入門款 Smart Phone、螢幕大的 Galaxy Note、解析度超高的 iPad、輕巧的 Google Nexus 7 都可以做 Responsive Web Design 。
缺點:
  • 載入速度的問題
    因為是使用同一份的 HTML & CSS ,所以不管 User 在手機上或者在 PC 上,要瀏覽的網頁都是同一份網頁,當然速度也是會一樣。但是手機上做 Responsive Web Design 會把頁面做到非常簡單,但也只是把元素隱藏,事實上載入速度並不會變快。
  • 在 Mobile 上,要再花心思做設計
    很顯然的在手機上 User 的瀏覽是與在傳統 PC 上是完全不一樣的,所以如果要有一個好的 Mobile User Experience 的話,你就必須針對 Mobile 這塊去下功夫看怎樣的動線閱讀流程才是最好的。
為了讓傳統 PC 的 1280*768 ~ 1920*768 和 Mobile 的 480*320 都有最好的顯示效果,Responsive Web Design 是個很好的解決方案。通常,Responsive Web Design 有這三項重點必須注意:
  • 有彈性、可適應不同裝置的網頁版面
  • 有彈性、可適應不同裝置的圖片、多媒體尺寸
  • 使用 CSS3 Media Queries

Responsive Web Design 的實作方式

由於 Responsive Web Design 實作的方式有幾種,所以這篇文章我們先來整理一下,往後的文章再詳細介紹使用方法。

CSS Grid System 與 CSS Fluid Grid System 網頁版面

Grid 這個字有「格」的意思,沒錯,Gird System 就是把網頁變成有規則性大小的格子,我們以 Bootstrap 的 Grid System 來看,總共有 12 種欄寬,從大到小都有。我們就可以直接使用 Grid 網格系統,能讓開發過程變得很快。
1
至於 Fluid Grid System 就是把原本用像素去定義的寬度變成使用比例(百分比)的方式去呈現。比如說原本一個 Sidebar 要 width : 240px ,現在就可以改寫成  width : 20% 。這點,可以讓 Responsive Web Design 比較方便。

CSS Image max-width (Flexible image)調整圖片

這個很常用。在傳統 PC 上,我們的圖片像素通常都遠大於在 Mobile 上的最大解析度,所以如果沒有做任何調整,在看圖片上的體驗會比較差,簡單來說就是圖片會爆出瀏覽區域。而 CSS 中的 max-width 提供了解決方案,這個屬性能夠讓原本一個假設 700px 的圖片,在手機中顯示剛剛好占滿手機的寬度,而高度就隨著寬度做等比例縮小。
img {
    height: auto;
    max-width: 100%;
}
如果你想看加上這段的效果,你可以在閱讀本站文章的時候,把瀏覽器的寬度縮小(縮到寬度比圖片小),你就會發現圖片會變得越來越小。而沒有加上這句的話,則不會一起變小,而是超出瀏覽器。
由於圖片 Load 還是使用同一張圖片,所以會有效能差的問題,雖然的問題在國外有人提出解決方案,不過這個比較複雜就不提了,可自行搜尋。

CSS3 Media Queries

再來就是 CSS3 Media Query 的部分了,Media  Queries算是在 Responsive Web Design 中最容易被提起也最重要的一個部分。使用 Media Queries ,能夠讓某塊區域在 PC 上是顯示的,而在 Mobile 中是隱藏的。而這個判斷機制通常我們是使用瀏覽的寬度來做判斷,像 Mobile 的寬度大約 3、400左右,而傳統 PC 的寬度解析大概都是 1366 以上,利用這個差異就可以寫出符合不同寬度的 Media Queries 來。
// 在 PC 上的顯示
.box {
    width: 500px;
}
// Media Query ,也就是當寬度 < 767 px 時將載入下面這段 CSS :
@media (max-width: 767px) {
    .box {
        width: 100%;
    }
}

小結

Responsive Web Design 是一個不難的一項技能,事實上這個只要多練習,你就可以發現 Responsive Web Design 其實是一個很有趣的東西,他可以隨著寬度而有不同的顯示方式。如果你也是一個 html & css Designer ,我想學習 Responsive Web Design 是非常划算又容易的,因為它具有能跨不同裝置的一個很大的優點。
(部分想法來自:EZTABLE 、BoBochao