[PHP] 架站教學

以下教學僅適用於自己手動打造 LAMP 環境!

LAMP是基於 Linux,Apache,MySQL/MariaDB 和 PHP 的開放資源網絡開發平台。PHP是一種有時候用Perl或Python可代替的編程語言。這個術語來自歐洲,在那裡這些程序常用來作為一種標準開發環境。名字來源於每個程序的第一個字母。

每個程序在所有權裡都符合開放源代碼標準:Linux 是開放系統;Apache 是最通用的網絡服務器;mySQL 是帶有基於網絡管理附加工具的關係數據庫;PHP 是流行的對象腳本語言,它包含了多數其它語言的優秀特徵來使得它的網絡開發更加有效。

開發者在Windows操作系統下使用這些Linux環境裡的工具稱為使用WAMP。☞ 自己動手打造WEB服務器 Windows + Apache + PHP + MySQL


〈1〉我的安裝環境
作業系統Windows 7 SP1 (64位元作業系統)
必要套件Microsoft Visual C++ Redistributable for Visual Studio 2012

〈2〉我的安裝順序
# 版本 載點
1. ApacheVC11 Apache 2.4.17 Win32httpd-2.4.17-win32-VC11.zip
2. PHPPHP 5.6 (5.6.16) VC11 x86 Thread Safephp-5.6.15-Win32-VC11-x86.zip
3. MySQLMySQL Community Server 5.7.15 Windows (x86, 64-bit), ZIP Archive **2016.09.22紀錄mysql-5.7.15-winx64.zip
4. phpMyAdminphpMyAdmin 4.6.4 **2016.09.22紀錄phpMyAdmin-4.6.4-all-languages.7z
Apache 安裝重點
01當您欲安裝 Apache 2.4 binaries VC11 前,請先安裝好 Microsoft Visual C++ Redistributable for Visual Studio 2012 (☞ 請詳讀文件 )
02我該安裝 Apache Win64 還是 Win32 呢?

[我的電腦] 按右鍵 [內容],如果您的作業系統類型為 64 位元作業系統,基本上就安裝 Win64,但如果您想安裝 Win 32 也是可以的!

Win64 能承載比較多記憶體,當個人電腦使用 Photoshop 或 AutoCAD 可能用到很多記憶體的繪圖軟體時,才會明顯感受得到 Win 32 與 Win64 的差異性。如果肚子比較大,食物不夠多,肚子小或大就沒感覺有差,因此 64 的電腦,那其實兩種都可以裝。

〈3〉專案資料夾結構 D糟/
└── AppServ/
         └── Apache24/ .......... Apache folder
         └── doc/ ..................... 自建文件
         └── htdocs/ ................ 專案根目錄
                  └── phpMyAdmin/ ................ phpMyAdmin folder
         └── MySQL/ ............... MySQL folder
         └── PHP/ .................... PHP folder
         └── setup/ ................. 安裝軟體
         └── temp/ .................. 存放暫存檔案

〈4〉Config設定
Apache 更改設定檔:httpd.conf

1. 更改 ServerRoot 路徑,例:d:/AppServ/Apache24
ServerRoot "Apache路徑"
ScriptAlias /cgi-bin/ "Apache路徑/cgi-bin/"
<Directory "Apache路徑/cgi-bin">
ServerAdmin localhost@localhost
ServerName localhost:80

2. 更改 DocumentRoot 路徑,例:d:/AppServ/htdocs
(1) 新增一個叫做 htdocs 的資料夾,放在 AppServ 底下
(2) 在 htdocs 資料夾內,新增一個檔案,檔名需與 Apache/conf/httpd.conf 內 DirectoryIndex 後面接的檔名一致


DocumentRoot "專案路徑"
<Directory "專案路徑">
AllowOverride All
DirectoryIndex index.php index.html

3. 開啟模組:mod_rewrite 轉寫模組
改變您的網址,讓網站可以獲得安全效益。對於網址重寫來說很重要的 Apache 伺服器模組,這個模組可以讓你在無需額外安裝任何軟體,並且不會對網站訪客造成負面影響的情況下,輕鬆改變網址結構,也因此若要使用網址重寫規則的話,就必須要開啟此模組。☞ 開始編寫你的.htaccess file

LoadModule rewrite_module modules/mod_rewrite.so

<網址重寫規則>
有許多網站都有使用所謂的虛擬靜態技術,這種技術的一大特色在於網址末端明明就是 .html 但卻能顯示只有 PHP 或 ASP 這類伺服器程式才能處理的資訊。使用這種技術能為網站帶來許多好處,像是能增進 SEO 並讓網站較容易被搜尋引擎收錄,或是網址看起來比那種後面接了一大堆參數的基礎網址還要乾淨等。☞ 讓網站連結變得人性化!解析 URL Rewrite 網址重寫規則的概念與原理!

4. 檔尾加入:限制顯示伺服器的可用信息
ServerSignature Off
ServerTokens Prod

5. 檔尾加入:載入PHP
LoadModule php5_module "PHP路徑/php5apache2_4.dll"
AddType application/x-httpd-php .php
PHPIniDir "PHP路徑"  

安裝Apache
於 DOS 視窗底下,找到 /bin/ 底下,輸入「httpd.exe -k install」後,按「Enter」,即可啟動 Apache。

移除Apache
於 DOS 視窗底下,找到 /bin/ 底下,輸入「httpd.exe -k uninstall」後,按「Enter」,即可移除 Apache。

啟動Apache:建立 /bin/ 底下 ApacheMonitor.exe 的捷徑於「啟動」資料夾內
Win 7 啟動的路徑:C:\ProgramData\Microsoft\Windows\Start Menu\Programs\Startup

☞ Windows 8 怎麼找不到啟動資料夾?

現在您可以在網址列輸入:http://localhost,輸入完成後,按鍵盤上的 [Enter] 鍵,網頁顯示 (第2點) 的檔案內容
php 更改設定檔:php.ini

expose_php = Off
memory_limit = 32M
error_reporting = E_ALL & ~E_NOTICE
error_log = "temp路徑/php_errors.log"
extension_dir = "PHP路徑/ext"
upload_tmp_dir = "temp路徑/upload"
allow_url_fopen = Off
extension=php_curl.dll
extension=php_gd2.dll
extension=php_mbstring.dll
extension=php_mysql.dll
extension=php_mysqli.dll
extension=php_pdo_mysql.dll
extension=php_pdo_odbc.dll
extension=php_pdo_pgsql.dll
extension=php_pdo_sqlite.dll
date.timezone = "Asia/Taipei"
session.save_path = "temp路徑/session"
MySQL1. 下載文件,並解壓縮
2. 配置 my.ini 文件
3. 建立 data 資料夾
cd MySQL路徑\bin
mysqld --initialize-insecure --console

4. 掛載 MySQL 服務
mysqld --install

5. 啟動 MySQL 服務
net start mysql

6. 變更密碼
mysql -uroot -p
set password = password(‘你的新密碼‘);
**mysql指令後面要加「;」,直接按「Enter」只能當跳行看

☞ 下載安裝配置與使用MySQL-5.7.12-winx64.zip
環境變數電腦> 變更設定> 進階> 環境變數> Path
Path變數值追加:Apache路徑\bin;PHP路徑;PHP路徑\ext;MySQL路徑\bin

〈5〉PHP更多說明

IIS, Apache
01使用IIS,需要選擇Non-Thread Safe(NTS)版本的PHP。
02使用Apache Lounge(website:http://apachelounge.com/),可以選擇PHP VC11 X86或者X64版本。
03使用apache.org(website:http://www.apache.org/),下載的Apache1或者Apache2來搭建PHP環境的話,只能使用VC6版本,無法使用VC9+以上版本。
VC6, VC9, VC11
04php 5.3以後,沒有VC6版本提供下載了。
05VC9和VC11,是PHP的最新版本,其中包含了對於性能和穩定性的改進。
06VC9:通過 Visual Studio 2008 編譯,要求用戶安裝Microsoft Visual C++ 2008 SP1 Redistributable Package(x86 | x64)。
07VC11:通過 Visual Studio 2012 編譯,要求用戶安裝Visual C++ Redistributable for Visual Studio 2012(x86 | x64)。
TS, NTS
08TS:Thread Safe 可支援多執行緒, 執行時會進行多執行緒(Thread)安全檢查。
NTS:Non Thread Safe 非支援多執行緒, 在執行時不進行多執行緒(Thread)安全檢查。
09使用Apache+PHP的模式下,一般是把PHP作為一個Module load到apache中,那麼以apache父進程-多子進程的工作模式,是需要進行多執行緒檢查的,所以如果是以這種方式執行php,選擇ts版本。
X86, X64
10x86表示32位元, x64表示64位元, 位數對於安裝VC11有幫助, 個人建議VC11 X86, X64兩個版本都安裝上比較好, 反正沒衝突,然後啟動服務。
☞ PHP版本中的VC6,VC9,VC11,TS,NTS區別

〈6〉參考資料 ☞ 步驟 3:規劃 PHP 應用程式安全性
☞ php相關設定
☞ Apache2 SSL In Test Environment
☞ 手動安裝(非 *.msi 封裝)Apache 2.4.2 於 Windows 成功紀要
☞ AppServ|安裝後無法啟用apache的原因 ( skype 它預設會占用 80 port )


2025 年更新安裝方式
(20250212 更新) #PHP was deprecated in macOS 11 and removed from macOS 12. 如果你的 macOS 版本是 Monterey(12)或更新版本(如 Ventura、Sonoma),系統不再提供內建 PHP
設定文件:如何在 macOS 12 Monterey 上設定 MAMP本機伺服器
1. 禁用 mac os apache:sudo apachectl stop

2. 安裝 Homebrew: https://brew.sh/,如果沒有安裝 Xcode Command Line Tools,Homebrew 安裝程式將首先下載並安裝 Xcode 的命令列工具,接著繼續完成 Homebrew 的安裝。

3. 確認已安裝 Homebrew:brew -v

4. 透過 Homebrew 安裝 Apache:brew install httpd

5. 透過 Homebrew 安裝 PHP:[Laravel] 錯誤解決:The Zip PHP extension is not installed. Please install it and try again.

6. 編輯檔案 /usr/local/etc/httpd/httpd.conf
● DocumentRoot 預設是 /usr/local/var/www,可以自定成其他路徑。
● 預設的端口已設定為 8080 和 8443(分別用於 HTTP 和 HTTPS),可以自定端口 80 port。
- 開啟 LoadModule rewrite_module
- 開啟 LoadModule proxy_module
- 開啟 LoadModule proxy_fcgi_module
- 追加 LoadModule php7_module
- 讓 Apache 透過 FastCGI,把 .php 檔案傳送到 PHP-FPM(埠 9000)。SetHandler application/x-httpd-php 是使用 mod_php (內嵌 PHP),但這種方法在 macOS 12+ 以後已不建議,因為 macOS 不再內建 PHP,而 Homebrew 安裝的 PHP 主要使用 PHP-FPM 模式
<FilesMatch \.php$>
    SetHandler "proxy:fcgi://127.0.0.1:9000"
</FilesMatch>
- DirectoryIndex 加入 index.php
- AllowOverride All
- DocumentRoot
- Listen 80
- ServerName localhost
7. 啟動 Apache:brew services start httpd 這樣會讓 Apache 在背景啟動並且開機自動啟動。如果你不想要在背景執行,也可以直接執行:/usr/local/opt/httpd/bin/httpd -D FOREGROUND,這會讓 Apache 直接在前景執行,並顯示啟動日誌。

8. 修復故障的 Homebrew:
- 完整 clone
git -C /usr/local/Homebrew/Library/Taps/homebrew/homebrew-core fetch --unshallow
- 更新 Homebrew
brew update

9. 重啟 Apache
// 重新啟動 Apache
brew services restart httpd

// 確保有 PHP-FPM 進程
ps aux | grep php-fpm

// 檢查 Apache 是否已載入 proxy_fcgi_module
httpd -M | grep proxy_fcgi 


安裝方式 ☞ 使用 root user
因為操作 Apache 需要 root 權限,所以建議用以下指令將權限提權到 root 等級
$sudo su //切換到super user

sudo 其實是 super user do ,也就是用超級使用者的權限做些事情的意思 ,而後面的 su 代表的是 super user,所以這行的意思就是:我用超級使用的的權限,將當前的權限提升到超級使用者的等級 ☞ 在Mac上設定 Apache & PHP 環境(極新手向)

☞ Finder> 工具程式> 終端機
〈1〉安裝apache
01Mac內建Apache,手動啟用
02指令
sudo apachectl start     # 啟動伺服器
sudo apachectl -v     # 查看伺服器版本
sudo apachectl restart     # 重新啟動伺服器
sudo apachectl stop     # 關閉伺服器
sudo apachectl configtest     # 檢查設定是否正確

* 密碼:請輸入登入該帳號的密碼
03確認Apache Web Server 啟動成功
開啟瀏覽器輸入網址「http://localhost」,會看到 It Works
04(根目錄) 預設的網站資料夾位置,在『/Library/WebServer/Documents』
05[ httpd.conf ]
1. DirectoryIndex index.php index.html
2. AllowOverride All → 啟用.htaccess
3. LoadModule php7_module libexec/apache2/libphp7.so→ Mac內建PHP,手動啟用
4. LoadModule rewrite_module modules/mod_rewrite.so → 允許網址重寫

[修改 config 檔內容的方法]
Finder> 前往> 前往檔案夾> 輸入 /etc/apache2
〈2〉安裝php
01Mac內建PHP,手動啟用
02[ php.ini ]
1. date.timezone = Asia/Taipei (時區)
2. error_log = "/Library/WebServer/Documents/temp/php_errors.log" (Log 檔存取位置)
3. extension_dir = "ext" (延伸套件載入路徑)
4. upload_tmp_dir = "\Library\WebServer\Documents\temp\upload" (檔案暫存位置)
5. session.save_path = "/Library/WebServer/Documents/temp/session" (Session 暫存位置)
6. display_errors = On
7. 開啟延伸套件
□ extension=curl (載入安全性加強)
□ extension=gd2 (載入圖形驗證 GD 函式)
□ extension=mbstring (配合 phpmyadmin 安裝使用)
□ extension=mysqli (載入延伸套件 php_mysqli)
□ extension=pdo_firebird
□ extension=pdo_mysql
□ extension=pdo_oci
□ extension=pdo_odbc
□ extension=pdo_pgsql
□ extension=pdo_sqlite

[修改 ini 檔內容的方法]
1. 使用 php.ini.default 拷貝出一個 php.ini
cd /etc/
sudo cp php.ini.default php.ini

2. 把 php.ini 檔先移到 [桌面] 上來做編輯
sudo mv /etc/php.ini ~/Desktop

3. 檔案預設的權限是無法寫入,輸入指令來修改這個檔案權限
sudo chmod 646 ~/Desktop/php.ini

4. 請用「文字編輯」來開啟 php.ini 修改

5. 把 php.ini 的檔案權限改回來
sudo chmod 646 ~/Desktop/php.ini

6. 把 php.ini 檔案移回 /etc
sudo mv ~/Desktop/php.ini /etc
03 [問題] 如何查看 etc 資料夾?
Finder> 前往> 前往檔案夾> /etc/
參考: [Mac]如何修改、去哪修改Hosts檔內容?

[問題] 如何查看 php 的版本?
Finder> 工具程式> 終端機> php -v

[問題] OS X 10.10自帶的 PHP 版本是 PHP 5.5.x,如果我們想更新 PHP 的版本到 5.6 或者是 7.0 該怎麼辦呢?

升級到更高階 PHP 版本,可以透過 brew 或者 curl 兩種方式來安裝
curl指令 - 利用URL規則在命令列下工作的檔案傳輸工具

1.下載和安裝PHP 5.6
● PHP 5.6 的版本會被安裝到下面的路徑中:/usr/local/php5/
● php.ini 在 /usr/local/php5/lib/php.ini
● 擴展的一些配置都在 /usr/local/php5/php.d/ 目錄下
curl -s http://php-osx.liip.ch/install.sh | bash -s 5.6

2. 更改 MAC 環境變數
修改方法是使用 .bash_profile 方法來達成,這個檔案會在使用者登入時執行。所以是針對使用者的,並不會影響其他帳號。
1) 打開終端機
2) 輸入 sudo vim ~/.bash_profile 叫出 vi 編輯器後 (vim 是進階版的vi)
3) 將路徑輸入在檔案裡
export PATH=/usr/local/php5/bin:/usr/local/php5/sbin:$PATH
4) 存檔並關閉編輯器
5) source ~/.bash_profile 這可以讓系統去執行 .bash_profile 使路徑馬上生效,這樣就完成了。
6) 現在可以檢查一下路徑 echo $PATH

來源: MAC OS X 如何更改系統路徑與環境變數
參考: mac下快速安裝php的各個版本
參考: mac下更新自帶的PHP版本到5.6或7.0
參考: macOS 上安装 PECL
參考: [Mac] 修改環境變數下的路徑

〈3〉安裝MySQL
01官網下載 http://dev.mysql.com/downloads/mysql
02選擇版本
03先安裝mysql~x86_64.pkg #mysql安裝
04再安裝MySQL.prefPane #在「系統偏好設定」中看到「MySQL」選項
05最後安裝MySQLStartupItem.pkg #系統啟動後,mysql自動啟動
參考: mac下停止和啟動mysql命令
#啟動 MySQL 服務
sudo /usr/local/mysql/support-files/mysql.server start

#停止 MySQL 服務
sudo /usr/local/mysql/support-files/mysql.server stop

#重啟 MySQL 服務
sudo /usr/local/mysql/support-files/mysql.server restart
06[ 設定root密碼 ]
1. 一開始安裝好mysql時,root可能尚未設定密碼,可以用以下指令設定
2. cd /usr/local/mysql/bin
3. 執行更換密碼: ./mysqladmin -h localhost -u root password 新密碼
4. 連線測試 ./mysql -u root -p
5. 出現輸入密碼時,輸入剛剛輸入的新密碼,成功的話應該會進入 Mysql 命令列
07[問題]
[已解決]
(原來phpinfo)
mysql.default_socket /var/mysql/mysql.sock /var/mysql/mysql.sock
mysqli.default_socket /var/mysql/mysql.sock /var/mysql/mysql.sock
pdo_mysql.default_socket /var/mysql/mysql.sock /var/mysql/mysql.sock

(unix socket)
UNIX socket /tmp/mysql.sock


[問題] Mysql中如何查看版本 ☞前往解決方案
〈4〉安裝phpMyAdmin
01官網下載 http://www.phpmyadmin.net/home_page/downloads.php
02選擇版本
03下載後直接解壓縮,放至網頁根目錄下
04[ config.inc.php ]
將config.sample.inc.php復制成config.inc.php
05 [問題]
Cannot start session without errors, please check errors given in your PHP and/or webserver log file and configure your PHP installation properly. Also ensure that cookies are enabled in your browser.

Error during session start; please check your PHP and/or webserver log file and configure your PHP installation properly. Also ensure that cookies are enabled in your browser. session_start(): open(SESSION_FILE, O_RDWR) failed: Permission denied (13) session_start(): Failed to read session data: files (path: /Library/WebServer/Documents/temp/session)

[已解決]
cd /Library/WebServer/Documents/
sudo chmod 777 temp

add the setting a 777 to the session.save_path folder。phpmyadmin要啟用,需要讀取php.ini裡的session.save_path

[問題] #2002 無法登錄 MySQL 服務器


[已解決]
出現這個錯誤,表示沒有連接到數據庫。修改config.inc.php文件:
將$cfg['Servers'][$i]['host'] = 'localhost';
改為$cfg['Servers'][$i]['host'] = '127.0.0.1';

參考: phpmyadmin登錄提示mysqli_real_connect(): (HY000/2002): No such file or directory解決

[問題]
mysqli_real_connect(): The server requested authentication method unknown to the client [caching_sha2_password]

mysqli_real_connect(): (HY000/2054): The server requested authentication method unknown to the client



[已解決]
全新的 MySQL8.0 正式發布後,第一時間嚐鮮登陸 phpmyadmin 的人,估計會碰到上面兩種錯誤提示。因為新的 MySQL 8.0.11 默認使用的是 caching_sha2_password 身份驗證方法。

[辦法1] 修改默認加密方式mysql_native_password
OS X 系統安裝的 mysql 默認是不用 my.cnf 配置文件的,僅是使用默認的數據庫配置值。如要進行數據庫定制,可到'/usr/local/mysql/support-files/'文件夾底下,把裡面的任一個 .cnf 配置文件複製到 /etc/ 目錄底下並修改文件名稱為 my.cnf。不過 MAC OS X 系統的 mysql 確實不需要 my.cnf 來進行配置,就已經足夠可以使你滿意運行了。

[辦法2] 修改登陸不上賬號的加密方式
> use mysql
> ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY '你的密碼';
> FLUSH PRIVILEGES;
參考: mysql8.0.11用戶密碼設置注意事項
參考: 全新的MySQL8.0帶來的不止速度還有麻煩
參考: Mac OS X 中mysql的配置文件my.cnf的位置

[問題] 設定檔案需要設定加密密碼(blowfish_secret)


[已解決]
修改config.inc.php文件:
將$cfg['blowfish_secret'] = '';
改為$cfg['blowfish_secret'] = 'xxxxxxxxxxxxxxx'; //在引號裡面輸入超過 32 個字元的英數作為亂數密碼

參考: phpMyAdmin 設置

[問題] 無法存取 $cfg['TempDir'] (./tmp/)。phpMyAdmin 會無法快取模版,並且會因為此原因變得很慢。


[已解決]
這個主要是phpmyadmin目錄下缺失tmp文件夾,或者tmp文件夾權限設置引起的,這樣解決辦法就簡單了。直接打開相應目錄phpmyadmin,在這個目錄下新建文件夾tmp ,然後右鍵屬性設為777,這樣就解決了。

參考: phpmyadmin:變量 $cfg[‘TempDir’] (./tmp/)無法訪問。 phpMyAdmin無法緩存模板文件,所以會運行緩慢

[問題] 登入後,首頁底下出現 尚未設定 phpMyAdmin 設定儲存空間,部份延伸功能將無法使用。或者前往任一個資料庫的 '操作' 頁籤設定。

[已解決]
修改config.inc.php文件,增加一筆內容:
$cfg['PmaNoRelation_DisableWarning'] = 'true';

參考資料

☞ [Mac]不用懶人包,在 OS X 上安裝 Apache, PHP, MySQL

曾經遇過的程式問題解決方案

01/PHP

☞ PHP: Call to undefined function mb_strlen() - on custom compiled PHP with mbstring enabled
☞ php獲取月第一天和最後一天
☞ PHP - remove <img> tag from string
☞ How can use PHP to check if a directory is empty?
☞ 計算中文檔名檔案大小:iconv()轉碼
☞ windows 系統中的中文檔名仍是以Big5為主
☞ 上傳中文檔名:iconv()轉碼
☞ 刪除上傳的中文檔案:iconv()轉碼
☞ 單引號本身以及反斜線,要用「\'」或者「\\」才能顯示單引號或反斜線
☞ php 處理textarea的換行
☞ Quickly Removing Empty Array Elements in PHP
☞ PHP怎麼判斷一個文件的時間是否超過2天或者幾個小時?
☞ PHP把時間處理成多少分鐘前
☞ Find URLs in Text, Make Links
☞ getcwd() 函數返回當前目錄
☞ implode() (將array組成一個字串)
☞ Check if string contains specific words? strpos() (從字串中找到自己想要的某個字元)
☞ 將數字補零(使用str_pad)
☞ Get all days and date for a given month 印出整個月的日期
☞ 變數(Variables) $$變數的用法
☞ Can we do multiple explode statements on one line in PHP? 切割網址
☞ 日期時間轉換成中文星期幾
☞ 兩個日期之間共是幾個月
☞ 兩個日期之間共是幾個月2
☞ cal_days_in_month() Function 取得某年中的某月的該月總天數
☞ cal_days_in_month () function is not working
☞ PHP上傳檔案,透過 PHP $_FILES 陣列輕鬆上傳檔案
☞ Get The First Image From a Post 取得文章中第一張圖

03/CSS

☞ select 箭頭
☞ Transparent Contact Form 透明input
☞ 線條式input
☞ How to style a <select> dropdown with CSS only without JavaScript?
☞ Style a Select Box Using Only CSS
☞ need help CSS centering with absolute positioning
☞ Absolute positioning inside relative positioning?
☞ Can I color table columns using CSS without coloring individual cells?
☞ 8 different ways to beautifully style your lists
☞ Make a link have 100% width
☞ CSS: Responsive way to center a fluid div (without px width) while limiting the maximum width?
☞ How to use CSS to surround a number with a circle?
☞ 價格牌CSS
☞ Fullscreen Background Image Slideshow with CSS3
☞ CSS: width of a link doesn't change by setting the width attribute
☞ display: table-cell 無法使用 margin/ padding 的解法
☞ HTML將footer置底的方法(使用CSS)
☞ margin裡的auto通常是拿來「置中對齊」使用
☞ Why doesn't margin:auto center an image?
☞ Fade and Blur on Hover Data Table
☞ Simple Little Table CSS3
☞ How to change the height of a <br>?
☞ 將table置中的css語法 table {margin-left:auto; margin-right:auto;}
☞ 3個div並排
☞ floating footer always on the bottom and visible
☞ 3 COOL CSS3 IMAGE HOVER EFFECTS
☞ position:absolute + visibility:hidden 隱藏元素
☞ 如何用純CSS固定thead實現表格滾動? tbody設置overflow之密
☞ 適合手機瀏覽的圖片大小
☞ DIV區塊內文字左右對齊
☞ DIV 並排語法
☞ div 實現長英文字母自動換行CSS (white-space:normal; )
☞ CSS自動換行,防止撐破DIV
☞ How To Create Flat Style Breadcrumb Links with CSS (建立麵包屑)
☞ Flat CSS3 Breadcrumb (建立麵包屑)
☞ CSS DIV 置中最簡單的方法,相容各式瀏覽器


Image Source

☞ Briefly about PHP

沒有留言:

技術提供:Blogger.