You are on page 1of 98

Program Studi Ilmu Komputer

Jurusan Matematika Fakultas MIPA


Universitas Diponegoro
2007
Revisi 3.0 6 Oktober 2007

Bahan Ajai
Pemiogiaman Web








Bisusun 0leh
Aiis Puji Wiuouo NT
Aui Wibowo SSi
Nahasiswa Ilmu Komputei Angkatan
Tim Nouul Bimakom 0nuip
Modul Pemrograman Web
Halaman | i

'$)7$5 ,6,

Cover ...................................................................................................... i
Daftar isi.................................................................................................. ii

Bab 1 Internet Overview
1.1. What is Internet .................................................................... 1
1.2. Internet Service .................................................................... 1
1.3. Website & Web Application ...................................................... 1
1.4. Web Building Blocks ............................................................... 2
1.5. How Does Web Work.............................................................. 2
1.6. Web Client ........................................................................... 3
1.7. Web Server .......................................................................... 3
1.8. URL (Uniform Resource Locator) ............................................... 3
1.9. HyperText Transfer Protocol .................................................... 4
1.10. HyperText Markup Language ................................................... 4
1.11. Cascading Style Sheet ............................................................ 5
1.12. Web programming ................................................................. 5

Bab 2 How Internet Works
2.1. Halaman WWW ..................................................................... 6
2.2. HTML Code .......................................................................... 6
2.3. WWW ................................................................................. 6
2.4. URL .................................................................................... 7
2.5. HTTP Session ....................................................................... 7
2.6. HTTP Protocol ....................................................................... 7
2.7. Connections ......................................................................... 8
2.8. Addresses ............................................................................ 8
2.9. TCP .................................................................................... 8
2.10. Reliable TCP Operation ........................................................... 8
2.11. UDP.................................................................................... 9
2.12. Internet Protocol ................................................................... 9
2.13. Ethernet .............................................................................. 9
2.14. Routing ............................................................................... 10
2.15. DNS ................................................................................... 11
2.16. NameSpace Sructure ............................................................. 11
2.17. Network Model...................................................................... 12
2.18. Conclusion ........................................................................... 12

Bab 3 HyperText Markup Language
3.1. Pendahuluan ........................................................................ 13
3.2. Struktur Dasar ...................................................................... 13
3.3. Spesifikasi Simbol dan Elemen Tag ........................................... 14
3.4. Background Colors & Images ................................................... 14
3.5. Bold, Italic, Underlining, dan Nesting tags .................................. 15
3.6. Monospaced Font, Font Size, dan Font Face ................................ 15
3.7. Font Color, more about Nesting Tags ......................................... 15
3.8. Section Headings, Link Colors .................................................. 16
3.9. Paragraph Tag dan Paragraph Aligning, Centering ........................ 16
3.10. The "space code", dan Special Characters................................... 16
3.11. Inserting Images, dan Relative Paths ........................................ 17
Modul Pemrograman Web
Halaman | ii
3.12. Link, Email Links, dan Image Links ........................................... 18
3.13. More on Images, Image Filesizes, Thumbnails, Anchors................. 18
3.14. Ordered dan Unordered Lists ................................................... 20
3.15. Definition Lists ...................................................................... 20
3.16. Horizontal Rules .................................................................... 20
3.17. Preformating ........................................................................ 22
3.18. Tables ................................................................................. 22
3.19. Forms ................................................................................. 26
3.20. Frames ............................................................................... 27

Bab 4 Cascading Style Sheet
4.1. Internal CSS ........................................................................ 29
4.2. Eksternal CSS....................................................................... 30
4.3. Inline CSS ........................................................................... 30
4.4. CSS Classes ......................................................................... 31
4.5. CSS Background .................................................................. 32
4.6. CSS Font ............................................................................. 35
4.7. CSS Text ............................................................................. 38
4.8. CSS Padding ........................................................................ 41
4.9. CSS Margin .......................................................................... 42
4.10. CSS Border .......................................................................... 43
4.11. CSS List .............................................................................. 46
4.12. CSS Link ............................................................................. 48
4.13. CSS Mouse Cursor ................................................................. 51

Bab 5 JavaScript
5.1. Sintaks ............................................................................... 53
5.2. Head Body ........................................................................... 53
5.3. File Eksternal........................................................................ 53
5.4. Operator ............................................................................. 54
5.5. Variabel .............................................................................. 55
5.6. Functions............................................................................. 56
5.7. Events ................................................................................ 56
5.8. Alerts.................................................................................. 56
5.9. Confirm ............................................................................... 57
5.10. Prompt................................................................................ 57
5.11. Print ................................................................................... 58
5.12. Redirect .............................................................................. 58
5.13. Popup ................................................................................. 59
5.14. Date ................................................................................... 60
5.15. Array .................................................................................. 62
5.16. Image ................................................................................. 62
5.17. Case Study .......................................................................... 64

Bab 6 Document Object Model
6.1. DOM dan Cara Modifikasinya dengan Javascript ........................... 68
6.2. Membuat DOM Widget secara Dinamis ....................................... 69
6.3. Menggeser DOM Widget .......................................................... 71

Modul Pemrograman Web
Halaman | iii

Bab 7 Dynamic HyperText Markup Language
7.1. Pengantar ........................................................................... 74
7.2. DHTML sebagai Perpaduan Teknologi Web .................................. 75

Bab 8 eXtensible Markup Language
8.1. Pengertian ........................................................................... 77
8.2. Tentang XML ........................................................................ 77
8.3. Penggunaan XML ................................................................... 78
8.4. Sintaks XML ......................................................................... 79

Lampiran HTML ......................................................................................... 83

Modul Pemrograman Web
Halaman | 1
BAB 1
Internet Overview


1.1. What is Internet?
a large computer network (all over the world)
network of networks
based on Transmission Control Protocol/Internet Protocol (TCP/IP)


Gambar 1.1. Internet Network

1.2. Internet Services
World Wide Web (WWW) : Hyper Text Transfer Protocol (HTTP)
e-mail : Post Office Protocol (POP), Simple Mail Transfer Protocol (SMTP), Internet
Message Access Protocol (IMAP)
chat : Internet Relay Chat (IRC)
file transfer : File Transfer Protocol (FTP)
remote access : telnet, Shell Secure (SSH)
Lightweight Directory Access Protocol (LDAP), Network management Application
Protocol (NMAP), SOAP, Voice Over Internet Protocol (VoIP), etc.

1.3. Web Site & Web Application
Web (WWW)
a collection of documents and files on the internet that are linked together,
enabling users to find, retrieve, and use the information
Web site / homepage
static pages
information based (users gather information)
Web application
dynamic pages
task based (users do something)
Types of web site/web application
personal/corporate web site
e-commerce, e-learning, e-government
news/information/community portal
corporate portal, etc.
Modul Pemrograman Web
Halaman | 2


1.4. Web Building Blocks
Web client (browser)
Web server
URL : Uniform Resource Locator
HTTP : HyperText Transfer Protocol
HTML : HyperText Markup Language
CSS : Cascading Style Sheet

and for web programming, there're more :
CGI, server side program execution (Perl, C)
server side scripting (PHP, ASP)
client side scripting (JavaScript, JScript, VBScript)

1.5. How does Web Work?
What happened :
user types URL into browser
http://www.google.com
browser translates URL to an IP address and connects using TCP to server on port
80 (HTTP service)
connects to a computer with IP address 216.239.39.99 port 80
upon connection, browser sends a GET request (HTTP request)
GET / HTTP/1.1
server responds with HTTP response (with headers and the file requested in the
body). The mime type is also included which tells browser what type of file it is
(HTML, text, image, etc).
Content-type: text/html
<html>
<head><title> Google </title></head>
<body>Welcome to google <img src='logo.gif'></body>
</html>
inline files (like images) don't come with the main file, so browser has to re-
submit a new request to get every other file listed in the page.
GET /logo.gif HTTP/1.0
browser renders received files to be displayed to user
with HTTP, once the file is done downloading, the connection broken, and the
server forgets we exist.

HTTP is stateless :
No continuing interaction between a user and a server.
Each request is discrete.


Gambar 1.2. HTTP Request and Response
Modul Pemrograman Web
Halaman | 3

1.6. Web Client (browser)
web browser
is a software
runs on user's computer
a tool to navigate the web
display web documents
technically,
it contructs HTTP requests required to retrieve a web document (addressed with
URL)
renders the responses into user's view
most popular web browser software todate:
MS Internet Explorer, runs on Windows platform
Netscape Navigator/Communicator, runs on multi platform
Opera, runs on multi platform
Konqueror, runs on Linux platform
Mozilla , runs on multi platform
lynx (text based), runs on Linux platform

1.7. Web server
web server
is a software
runs on a server
makes web documents stored on the server become available to
internet users
technically,
it handles HTTP requests
get the requested document
sent it back as HTTP responses
most popular web server software todate:
Apache, runs on multi platform (best on Linux)
MS Internet Information Server (IIS), runs on Windows platform
Tomcat (for java), runs on multi platform


1.8. URL (Uniform Resource Locator)
URL is the addressing system used in internet
standard URL format is described in RFC 1738
(http://www.ietf.org/rfc/rfc1738.txt)
addresses begin with the type of service/protocol
examples of URL address:
http://students.if.itb.ac.id/~if21008
mailto:if21008@student.if.itb.ac.id
ftp://ftp.informatika.org/
URL address used in web:
addresses begin with http://, followed by the domain name and directory
information
examples of web URL address:
http://www.itb.ac.id/campus-life/index.html
http://www.google.com/search?hl=en&q=URL+RFC
http://www.indymedia.org:8081/
Modul Pemrograman Web
Halaman | 4


1.9. HyperText Transfer Protocol (HTTP)
HTTP is communication protocol used in web
standard HTTP specification (HTTP 1.1) is described in RFC 2616
(http://www.ietf.org/rfc/rfc2616.txt)
example of "conversation":
Browser
GET / HTTP/1.1
Accept: image/gif, image/jpeg, application/x-shockwave-flash, */*
User-Agent: Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1)
Server
Content-type: text/html
<html>
<head><title> Google </title></head>
<body>Welcome to google <img src='logo.gif'></body>
</html>
Browser
GET /logo.gif HTTP/1.1
Accept: image/gif, image/jpeg, application/x-shockwave-flash, */*
User-Agent: Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1)
Server
Content-type: image/gif

GIF89aC6aD&n`1_!VRS: _g5Z7J_ % " !Y _K_
"d`qDbF9~k-
_} &-%= z! - uebx M%"s* OE,_ I^,........


1.10. HyperText Markup Language (HTML)
HTML is a standard format for publishing web documents
standard HTML specification (HTML 4.01) can be found at
http://www.w3.org/TR/html4/
example of HTML document:

<html>
<head>
<title>My first HTML document</title>
</head>
<body>
<p>Hello world!<br>Welcome to my <b>first</b> HTML page.
</p>
</body>
</html>

display result :
Hello world!
Welcome to my first HTML page.

Modul Pemrograman Web
Halaman | 5

1.11. CSS (Cascading Style Sheet)
CSS is a simple mechanism for adding style (e.g. fonts, colors, spacing) to web
documents
standard CSS specification (CSS 2) can be found at http://www.w3.org/TR/REC-
CSS2/
example of HTML document using CSS:
<hfm1>
<head>
<f1f1e>My f1sf h1ML documenf</f1f1e>
</head>
<sfy1e fype=`fexf/css`>
p { fonf-fam11y: A1a1 fexf-decoaf1on: unde11ne }
p:f1sf-1effe { fonf-s1ze: 20pf }
b { fonf-s1ze: 20pf }
</sfy1e>
<body>
<p>he11o Wo1d!<b>We1come fo my <b>f1sf</b> h1ML page.
</p>
</body>
</hfm1>

display result :
Hello world!
Welcome to my first HTML page.


1.12. Web programming
CGI, server side program execution (Perl, C)
Web server executes a program file and take its output as HTTP response
Server side scripting (PHP, ASP)
Web server parse and executes script embedded inside the web document
Client side scripting (JavaScript, JScript, VBScript)
Web browser parse and executes script embedded inside the received web
document, and may update the display without
re-submit a request to web server

Modul Pemrograman Web
Halaman | 6

BAB 2
How Internet Works


2.1. Halaman World Wide Web (WWW)

Gambar 2.1. Halaman WWW

2.2. HyperText Markup Language (HTML) Code
<h1ML>
<hLAD>
<1l1LL>N1xu lnfenaf1ona1</1l1LL>
</hLAD>
<8ODY backgound="/gfx/back1.g1f">
<CLN1Lk>
<lMG 5kC="/gfx/1ogo.g1f" AL1="N1xu Oy"><8k>
<h1><l>N1xu Oy</l></h1>
<uL>
<Ll><A hkLI="/yhfeysf1.hfm1">Confacf us</A>
<Ll><A hkLI="/avo1meff/">Jobs</A>
<Ll><A hkLI="/pa1ve1uf/">Whaf We do</A>
<Ll><A hkLI="hffp://WWW.namesufe.com/">
Name5ufe</A>
</uL>
</CLN1Lk>
</8ODY> </h1ML>

2.3. WWW
Combines text, pictures and hyperlinks to a hypertext document
a hyperlink points to another document
Can also contain moving pictures, active programs etc.
Hypertext document is written in HTML language
HyperText Markup Language
based on SGML (Standard Generalized Markup Language)
describes the structure of a document
WWW browser decides how to display the document based on the structure
description in HTML
Modul Pemrograman Web
Halaman | 7

2.4. URL
Universal Resource Locator (URL)
URL is an address to the current location of information
protocol://host[:server port]/path/file.html
protocol://host[:server port]/path/
For example
http://www.hut.fi/
http://www.nixu.fi/~kiravuo/etiketti/index.html
news:sfnet.harrastus.retkeily
ftp://ftp.funet.fi/pub/netinfo/rfc/
WWW browser uses the URL address to retrieve a document over the network

2.5. Hyper Text Transfer Protocol (HTTP) Session
Connection to the HTTP server program in www.nixu.fi
equivalent to: telnet www.nixu.fi 80
GL1 /~k1avuo/demo.hfm1 h11P/1.0 GL1 /~k1avuo/demo.hfm1 h11P/1.0 GL1 /~k1avuo/demo.hfm1 h11P/1.0 GL1 /~k1avuo/demo.hfm1 h11P/1.0
Connecf1on: keep Connecf1on: keep Connecf1on: keep Connecf1on: keep- -- -A AA A11ve 11ve 11ve 11ve
use use use use- -- -Agenf: Moz111a/4.06 |en] {W1n95 l} Agenf: Moz111a/4.06 |en] {W1n95 l} Agenf: Moz111a/4.06 |en] {W1n95 l} Agenf: Moz111a/4.06 |en] {W1n95 l}
Accepf: 1mage/g1f, 1mage/x Accepf: 1mage/g1f, 1mage/x Accepf: 1mage/g1f, 1mage/x Accepf: 1mage/g1f, 1mage/x- -- -xb1fmap, 1mage/peg, xb1fmap, 1mage/peg, xb1fmap, 1mage/peg, xb1fmap, 1mage/peg,
1mage/ppeg, 1mage/png, "/" 1mage/ppeg, 1mage/png, "/" 1mage/ppeg, 1mage/png, "/" 1mage/ppeg, 1mage/png, "/"
Accepf Accepf Accepf Accepf- -- -Chasef: 1so Chasef: 1so Chasef: 1so Chasef: 1so- -- -8859 8859 8859 8859- -- -1,",uff 1,",uff 1,",uff 1,",uff- -- -8 88 8
... ... ... ...

h11P/1.1 200 Ok
5eve: Apache/1.2.6
Lasf-Mod1f1ed: 1ue, 24 Nov 1998 06:35:48 GM1
Confenf-Lengfh: 466
keep-A11ve: f1meouf=15, max=100
Connecf1on: keep-A11ve

Confenf-1ype: fexf/hfm1
...
<h1ML>
<hLAD>
<1l1LL>N1xu lnfenaf1ona1</1l1LL>
...

GL1 /gfx/back1.g1f h11P/1.0 GL1 /gfx/back1.g1f h11P/1.0 GL1 /gfx/back1.g1f h11P/1.0 GL1 /gfx/back1.g1f h11P/1.0
kefee: hffp://WWW.n1xu.f1/~k1avuo/demo.hfm1 kefee: hffp://WWW.n1xu.f1/~k1avuo/demo.hfm1 kefee: hffp://WWW.n1xu.f1/~k1avuo/demo.hfm1 kefee: hffp://WWW.n1xu.f1/~k1avuo/demo.hfm1
... ... ... ...

h11P/1.1 200 Ok
Confenf-Lengfh: 902
Confenf-1ype: 1mage/g1f
..GlI89a...
...
Gambar 2.2. HTTP Session
2.6. HTTP protocol
HTTP is a simple protocol for file transfer over the network
Client (browser) initiates the session by connecting to the server
pull protocol, server does not transmit on its own
Client issues the GET-command to retrieve a file from the server
Additional information is also passed
client type
acceptable data formats
Server sends information about the file and the contents of the file
Modul Pemrograman Web
Halaman | 8


2.7. Connections
HTML is a data format
HTTP protocol transfers files over a reliable connection
no error checks or checksums in HTTP
On the Internet we use TCP/IP for the reliable connection
TCP/IP provides a reliable byte-stream as a service to HTTP
Browser uses HTTP to get the required HTML file specified by the URL


Gambar 2.3. WWW Connection

2.8. Addresses
Each host has a name
eg. www.hut.fi
The network uses numeric addresses
eg. 130.233.224.28
Translation is provided by the Domain Name Service (DNS)
A host has also numbered ports, which are connected to server programs
port addresses are standardized, eg port 80 for HTTP, port 25 for Simple Mail
Transfer Protocol (SMTP) email

2.9. TCP
TCP = Transmission Control Protocol
Defined in RFC-793
Connection-oriented, reliable, byte-stream service
Application data is broken into segments, which are sent as IP datagram.
Features:
checksums, timeouts and flow control
segment reassembly in correct order, discarding duplicate packets

2.10. Reliable TCP operation
Receiver sends acknowledgment for each segment.
If a packet gets lost, timeout will ensure its retransmitted

Gambar 2.4. TCP Operation

Modul Pemrograman Web
Halaman | 9
Normally a sliding window technique

Gambar 2.5. Sliding Window Technique

2.11. UDP
UDP = User Datagram Protocol
Defined in RFC-768
Unreliable datagram-oriented transportation layer protocol
offers little extra functionality besides port numbers
light-weight, easy to implement
Applications using UDP: DNS, Simple Network Time Protocol (SNTP), Simple Network
Management Protocol (SNMP)

2.12. Internet Protocol (IP)
IP = The Internet Protocol
Defined in RFC-791
IP sends simple datagrams over network.
It provides unreliable and connectionless delivery service.
unreliable = no guarantees, best effort only
connectionless = each packet is routed separately

2.13. Ethernet
Defined in IEEE 802.3
Local area network
limited to short range connections (100 m - 1 km)
different cabling options (coaxial cabling, twisted pair etc.)

2.13.1. Data client -> server
L1hLk: Desf1naf1on = 8:0:20:74:f1:2c, 5un
L1hLk: 5ouce = 0:0:3b:80:e:93,
L1hLk: Lfhefype = 0800 {lP}
lP: Pofoco1 = 6 {1CP}
lP: 5ouce addess = 194.197.118.74 194.197.118.74 194.197.118.74 194.197.118.74, ch111.n1xu.f1
lP: Desf. addess = 194.197.118.20 194.197.118.20 194.197.118.20 194.197.118.20, a1openo.n1xu.f1
1CP: 5ouce pof = 35620 35620 35620 35620
1CP: Desf1naf1on pof = 80 80 80 80 {h11P}
1CP: 5equence numbe = 7 77 760000273 60000273 60000273 60000273
1CP: AcknoW1edgemenf numbe = 2370000258 2370000258 2370000258 2370000258
h11P: "GL1 /~k1avuo/demo.hfm1 h11P/1.0 GL1 /~k1avuo/demo.hfm1 h11P/1.0 GL1 /~k1avuo/demo.hfm1 h11P/1.0 GL1 /~k1avuo/demo.hfm1 h11P/1.0
Connecf1on: keep Connecf1on: keep Connecf1on: keep Connecf1on: keep- -- -A11ve A11ve A11ve A11ve
use use use use- -- -Agenf: Moz111a/4.06... Agenf: Moz111a/4.06... Agenf: Moz111a/4.06... Agenf: Moz111a/4.06..."


Modul Pemrograman Web
Halaman | 10


2.13.2. Ack server -> client
L1hLk: Desf1naf1on = 0:0:3b:80:e:93,
L1hLk: 5ouce = 8:0:20:74:f1:2c, 5un
L1hLk: Lfhefype = 0800 {lP}
lP: I1ags = 0x4 {do nof fagmenf}
lP: Pofoco1 = 6 {1CP}
lP: 5ouce addess = 194.197.118.20 194.197.118.20 194.197.118.20 194.197.118.20, a1openo.n1xu.f1
lP: Desf. addess = 194.197.118.74 194.197.118.74 194.197.118.74 194.197.118.74, ch111.n1xu.f1
1CP: 5ouce pof = 80 80 80 80 {h11P}
1CP: Desf1naf1on pof = 35620 35620 35620 35620
1CP: 5equence numbe = 2370000258 2370000258 2370000258 2370000258
1CP: AcknoW1edgemenf numbe = 760000379 760000379 760000379 760000379
1CP: I1ags = 0x10 {ACk} 0x10 {ACk} 0x10 {ACk} 0x10 {ACk}
h11P: ""

2.13.3. Data server -> client
L1hLk: Desf1naf1on = 0:0:3b:80:e:93,
L1hLk: 5ouce = 8:0:20:74:f1:2c, 5un
L1hLk: Lfhefype = 0800 {lP}
lP: Pofoco1 = 6 {1CP}
lP: 5ouce addess = 194.197.118.20 194.197.118.20 194.197.118.20 194.197.118.20, a1openo.n1xu.f1
lP: Desf. addess = 194.197.118.74 194.197.118.74 194.197.118.74 194.197.118.74, ch111.n1xu.f1
1CP: 5ouce pof = 80 80 80 80 {h11P}
1CP: Desf1naf1on pof = 35620 35620 35620 35620
1CP: 5equence numbe = 2370000299 2370000299 2370000299 2370000299
1CP: AcknoW1edgemenf numbe = 760000379 760000379 760000379 760000379
1CP: Dafa offsef = 20 byfes
1CP: I1ags = 0x10 {ACk} 0x10 {ACk} 0x10 {ACk} 0x10 {ACk}
h11P: "h11P/1.1 200 Ok h11P/1.1 200 Ok h11P/1.1 200 Ok h11P/1.1 200 Ok
5eve: Apache/1.2.6 5eve: Apache/1.2.6 5eve: Apache/1.2.6 5eve: Apache/1.2.6
Lasf Lasf Lasf Lasf- -- -Mod1f1ed: 1ue, 2... Mod1f1ed: 1ue, 2... Mod1f1ed: 1ue, 2... Mod1f1ed: 1ue, 2..."

2.13.4. Ack client -> server
L1hLk: Desf1naf1on = 8:0:20:74:f1:2c, 5un
L1hLk: 5ouce = 0:0:3b:80:e:93,
L1hLk: Lfhefype = 0800 {lP}
lP: Pofoco1 = 6 {1CP}
lP: 5ouce addess = 194.197.118.74 194.197.118.74 194.197.118.74 194.197.118.74, ch111.n1xu.f1
lP: Desf. addess = 194.197.118.20 194.197.118.20 194.197.118.20 194.197.118.20, a1openo.n1xu.f1
1CP: 5ouce pof = 35620 35620 35620 35620
1CP: Desf1naf1on pof = 80 80 80 80 {h11P}
1CP: 5equence numbe = 760000379 760000379 760000379 760000379
1CP: AcknoW1edgemenf numbe = 2370000627 2370000627 2370000627 2370000627
1CP: I1ags = 0x10 {ACk} 0x10 {ACk} 0x10 {ACk} 0x10 {ACk}
h11P: ""

2.14. Routing
Local Area Network (LAN)s are connected by routers
Each router has a table that tells which network address can be reached by which
connection
Backbone routers update their information automatically and can route around breaks
in the network
Routing example
Modul Pemrograman Web
Halaman | 11

Gambar 2.6. Routing

2.15. Domain Name System
Distributed database with local caching
Distributed administration (adding or deleting data)
Services provided:
Hostname to IP address
IP address to hostname
Mail exchange records

2.16. Name Space Structure


Gambar 2.7. Names Space Structure
Modul Pemrograman Web
Halaman | 12


2.17. Network models


2.18. Conclusion

Gambar 2.8. Conclusion

Modul Pemrograman Web
Halaman | 13
BAB 3
Hyper Text Markup Language (HTML)


3.1. Pendahuluan
HTML merupakan format standar yang digunakan untuk membuat dokumen web page.
HTML merupakan bahasa bertanda, menggunakan serangkaian teks tertentu (Tag) untuk
memberi tanda teks yang memiliki interprestasi khusus, dan file HTML berbentuk file teks
(plain text file) bukan binary file.
Sekarang ini aplikasi yang berkembang banyak cenderung menggunakan dokumen web
page, dengan tujuan untuk memberikan kemudahan instalasi, dan akses yang tidak
tergantung pada waktu serta tempat (baik secara intranet atau internet). Untuk
mendukung kondisi ini dokumen web page di buat dengan menggunakan HTML yang
memiliki ektensi file html atau htm. HTML dapat diakses menggunakan browser, seperti
Internet Explorer, Netscape Navigator, Mozilla Firefox, Opera, dan browser-browser
lainnya. HTML dibuat dengan menggunakan editor text, seperti Notepad, EditPlus,
Notepad++, dan editor lainnya.
Versi HTML yang dikembangkan adalah HTML 1.0, HTML 2.0, HTML 3.2, dan HTML 4.01
yang merupakan versi terakhir (pada saat modul ini di buat).
Dokumen HTML selalu memiliki pasangan mark, yang disebut sebagai TAG untuk
memberikan efek yang diinginkan. Secara umum format TAG adalah sebagai berikut :

<1AG> The text to be affected </1AG>

Awal Tag Akhir Tag

Tag HTML kebanyakan tidak bersifat case sensitive, hanya beberapa tag saja yang
bersifat case sensitive.

3.2. Struktur Dasar Halaman HTML
Setiap halaman HTML selalu dimulai dengan tag <h1ML> dan diakhiri dengan tag
</h1ML>, digunakan oleh browser untuk melakukan pembacaan file yang terdiri dokumen
HTML. Tag berikutnya adalah untuk membagi dokumen menjadi dua sesion head dan
body. Sesion head adalah sebagai pengantar suatu halaman, yang didefinisikan dengan
pasangan tag <hLAD> dan </hLAD> yang diletakan pada di bawah tag <h1ML>. Sesion
body adalah sebagai tempat untuk memasukan text dan property lainnya yang akan
tampil pada halaman, yang didefinisikan dengan pasangan tag <8ODY> dan </8ODY>.
Terdapat kebutuhan untuk memberikan judul suatu halaman yang akan tampil pada
menu bar browser, dimana dengan menambahkan pasangan tag <1l1LL> dan </1l1LL>
yang diletakan di bawah tag <hLAD>. Text dan property lainnya yang akan ditampilkan
pada browser diletakan dibawah tag <8ODY>. Untuk struktur dasar halaman HTML adalah
sebagai berikut (tampilan pada browser diberikan pada gambar 3.1):
Modul Pemrograman Web
Halaman | 14


Nama I11e Nama I11e Nama I11e Nama I11e : ha1aman.hfm1
<! <! <! <!-- -- -- -- 1anda komenfa -- -- -- --> >> >
<!DOC1YPL h1ML Pu8LlC "-//W3C//D1D h1ML 4.0 1ans1f1ona1//LN">
<!-- h1ML ves1 4.0 yang d1geneafe -->
<!-- menggunakan ed1fP1us 2.10 c -->

<h1ML> <h1ML> <h1ML> <h1ML>
<hLAD> <hLAD> <hLAD> <hLAD>
<!-- D1famp11kan sebaga1 f1f1e pada menu ba boWse-->
<1l1LL> <1l1LL> <1l1LL> <1l1LL> Judu1 ha1aman h1ML </1l1LL> </1l1LL> </1l1LL> </1l1LL>
</hLAD> </hLAD> </hLAD> </hLAD>
<!-- D1famp11kan pada boWse -->
<8ODY> <8ODY> <8ODY> <8ODY>
he11o, h1ML Wo1d !!!
</8ODY> </8ODY> </8ODY> </8ODY>
</h1ML> </h1ML> </h1ML> </h1ML>


Gambar 3.1. Tampilan pada Browser

3.3. Spesifikasi Simbol dan Elemen Tag HTML
HTML yang digunakan adalah HTML versi 4.01 yang dikenali oleh browser yang ada pada
sekarang ini baik produk Netscape maupun Microsoft. Pada bagian ini hanya merupakan
referensi singkat bukan merupakan spesifikasi lengkap HTML, yang diberikan pada
bagian Lampiran Bare Bones HTML Guide . Untuk detilnya dapat di lihat pada halaman
World Wide Web Consortium (W3C) dengan alamat hffp://WWW.W3.og/Makup, untuk
step-by-step HTML Guide pada hffp://Webach.com/Web/WWWhe1p.hfm1,
hffp://home.nefscape.com, dan hffp://WWW.m1cosoff.com

3.4. Background Colors dan Images
Nama I11e Nama I11e Nama I11e Nama I11e : backCo1o.hfm1
<h1ML>
<hLAD>
<1l1LL> 8ackgound Co1os </1l1LL>
</hLAD>
<!-- Membe1kan Wana pada backgound -->
<8ODY 8GCOLOk="#CCIICC">
he11o, h1ML Wo1d !!!
</8ODY>
</h1ML>
Nama I11e Nama I11e Nama I11e Nama I11e : backlmage.hfm1
<h1ML>
<hLAD>
<1l1LL> 8ackgound Co1os </1l1LL>
</hLAD>
<!-- Membe1kan backgound menggunakan 1mage -->
Modul Pemrograman Web
Halaman | 15
Nama I11e Nama I11e Nama I11e Nama I11e : backCo1o.hfm1
<!-- dengan syaaf f11e 1mage haus ada {".g1f, ".bmp, ".pg, efc} --
>
<8ODY 8ACkGkOuND="sW111es.g1f">
he11o, h1ML Wo1d !!!
</8ODY>
</h1ML>
Nama I11e Nama I11e Nama I11e Nama I11e : backI1xed.hfm1
<h1ML>
<hLAD>
<1l1LL> 8ackgound Co1os </1l1LL>
</hLAD>
<!-- 8GPkOPLk1lL5=IlXLD membe1kan efek backgound da1am -->
<!-- fefap dan yang bea1an 1s1 pada <8ODY> -->
<8ODY 8ACkGkOuND="1mages\qpbuf1.g1f" 8GPkOPLk1lL5=IlXLD>
<!-- 1mages\qpbuf1.g1f ada1ah f11e qpbuf1.g1f -->
<!-- pada fo1de 1mages -->
he11o, h1ML Wo1d !!!
</8ODY>
</h1ML>

3.5. Bold, Italic, Underlining, dan Nesting tags
Nama I11e Nama I11e Nama I11e Nama I11e : fomafCha.hfm1
<h1ML>
<hLAD>
<1l1LL> bo1d, 1fa11c, unde11n1ng, nesf1ng fags </1l1LL>
</hLAD>
<8ODY>
<!-- nesf1ng fags yang f1dak fead1 ove1ap {good} -->
<8><u>he11o</u>,<l>h1ML Wo1d </l> !!!</8>
<!-- 1ead1 ove1ap <8> <l>...</8></l> {bad}-->
</8ODY>
</h1ML>

3.6. Monospaced Font, Font Size, dan Font Face
Nama I11e Nama I11e Nama I11e Nama I11e : fonfIomaf.hfm1
<h1ML>
<hLAD>
<1l1LL> Ionf co1o, moe abouf nesf1ng fags </1l1LL>
</hLAD>
<8ODY>
<!-- sef ukuan fonf sebesa da1 1 - 7 ION1 5lZL-->
<!-- seka11gus membe1kan sef en1s fonf ION1 IACL -->
he11o, h1ML <ION1 5lZL=1 IACL="Com1c 5ans M5">Wo1d !!!</ION1>
<8k>
he11o, h1ML <ION1 5lZL=2 IACL="A1a1">Wo1d !!!</ION1> <8k>
he11o, h1ML <ION1 5lZL=3 IACL="A1a1 81ack">Wo1d !!!</ION1><8k>
he11o, h1ML <ION1 5lZL=4 IACL="Cou1e NeW">Wo1d !!!</ION1><8k>
he11o, h1ML <ION1 5lZL=5 IACL="lmpacf">Wo1d !!!</ION1><8k>
he11o, h1ML <ION1 5lZL=6 IACL="vedana">Wo1d !!!</ION1><8k>
he11o, h1ML <ION1 5lZL=7 IACL="Geog1a">Wo1d !!!</ION1><8k>
</8ODY>
</h1ML>

3.7. Font Color, more about Nesting Tags
Nama I11e Nama I11e Nama I11e Nama I11e : fonfCo1o.hfm1
<h1ML>
<hLAD>
<1l1LL> Ionf co1o, moe abouf nesf1ng fags </1l1LL>
</hLAD>
<8ODY>
Modul Pemrograman Web
Halaman | 16

Nama I11e Nama I11e Nama I11e Nama I11e : fonfCo1o.hfm1
<!-- sef Wana fonf ION1 COLOk -->
<!-- seka11gus membe1 fomaf fonf secaa nef1ng 1ag -->
he11o,
<ION1 5lZL=7 IACL="Geog1a" COLOk="#II0000">
<8>h1ML <u>Wo1d</u></8> !!!
</ION1>
</8ODY>
</h1ML>

3.8. Section Headings, Link Colors
Nama I11e Nama I11e Nama I11e Nama I11e : head11nkCo1.hfm1
<h1ML>
<hLAD>
<1l1LL> 5ecf1on head1ngs, 11nk co1os </1l1LL>
</hLAD>
<!-- Mendef1n1s1kan Wana backgoung,fexf, dan 11nk -->
<8ODY 8GCOLOk="#000000" 1LX1="#IIII66" LlNk="#00II66" vLlNk="#008833"
ALlNk="#00CCII">
<!-- Membuaf ha1aman 11nk-->
<A hef="hffp://1f21008.sfudenfs.1f.1fb.ac.1d">ha1aman L1nk</a>
<!-- head1ng h1 sampa1 h6 -->
<h1>he11o, h1ML Wo1d !!!</h1><8k>
<!-- head1ng menggunakan af1buf ALlGN -->
<h2 ALlGN="1eff">he11o, h1ML Wo1d !!!</h2><8k>
<h3 ALlGN="cenfe">he11o, h1ML Wo1d !!!</h3><8k>
<h4 ALlGN="1ghf">he11o, h1ML Wo1d !!!</h4><8k>
<h5>he11o, h1ML Wo1d !!!</h5><8k>
<h6>he11o, h1ML Wo1d !!!</h6><8k>
<!-- Membe1kan efek o11e coasfe -->
You can even make a <ION1 5lZL=4>o</ION1><ION1 5lZL=4>1</ION1><ION1
5lZL=5>1</ION1><ION1 5lZL=6>e</ION1><ION1 5lZL=7></ION1><ION1
5lZL=7>c</ION1><ION1 5lZL=6>o</ION1><ION1 5lZL=5>a</ION1><ION1
5lZL=4>s</ION1><ION1 5lZL=3>f</ION1><ION1 5lZL=2>e</ION1><ION1
5lZL=1>!</ION1>
</8ODY>
</h1ML>

3.9. Paragraph Tag dan Paragraph Aligning, Centering
Nama I Nama I Nama I Nama I11e 11e 11e 11e : paagaph.hfm1
<h1ML>
<hLAD>
<1l1LL> Paagaph fag & paagaph a11gn1ng, cenfe1ng </1l1LL>
</hLAD>
<!-- Mendef1n1s1kan Wana backgoung,fexf, dan 11nk -->
<8ODY>
<!-- Membuaf paagaph <P> </P> -->
<P>he11o, h1ML Wo1d !!!</P>
<!-- Membuaf paagaph <P> fanpa </P> pehaf1kan has11nya -->
<P>he11o, h1ML Wo1d !!!
<!-- Paagaph menggunakan af1buf ALlGN -->
<P ALlGN="1eff">he11o, h1ML Wo1d !!!</P>
<P ALlGN="cenfe">he11o, h1ML Wo1d !!!</P>
<P ALlGN="1ghf">he11o, h1ML Wo1d !!!</P>
<!-- Membe1kan efek cenfe menggunakan fag <CLN1kL> -->
<CLN1Lk>
<h5>he11o, h1ML Wo1d !!!</h5>
<CLN1Lk>
</8ODY>
</h1ML>
Modul Pemrograman Web
Halaman | 17

3.10. The "space code", dan Special Characters
Nama I11e Nama I11e Nama I11e Nama I11e : spec1a1Cha.hfm1
<h1ML>
<hLAD>
<1l1LL> 1he "space code", spec1a1 chaacfes </1l1LL>
</hLAD>
<8ODY>
<!-- Membuaf spas1 &nbsp -->
<P>he11o,&nbsp&nbsp&nbsph1ML Wo1d !!!</P>
<!-- Membuaf paagaph <P> fanpa </P> pehaf1kan has11nya -->
<P>he11o, h1ML Wo1d !!!
<!-- Membuaf quofaf1on mak &quof -->
<P ALlGN="1eff">&quofhe11o, h1ML Wo1d !!!&quof</P>
<!-- Membuaf < 1ess-fhan symbo1 &1f -->
<!-- Membuaf > geafe-fhan symbo1 &gf -->
<!-- Membuaf & ampesand &amp -->
<P ALlGN="cenfe">&1fhe11o&gf, h1ML&amp Wo1d !!!</P>
</8ODY>
</h1ML>

3.11. Inserting Images, dan Relative Paths
Nama I11e Nama I11e Nama I11e Nama I11e : 1magesPafh.hfm1
<h1ML>
<hLAD>
<1l1LL> lnsef1ng 1mages, e1af1ve pafhs </1l1LL>
</hLAD>
<8ODY>
<!-- Menamp11kan 1mages da1 f11e chef.g1f -->
<!-- f11e chef.g1f beada pada safu fo1de 1mages -->
<P ALlGN="cenfe"><!-- pos1s1 cenfe -->
<lMG 5kC="1mages\chef.g1f" WlD1h=130 hLlGh1=101>
</8ODY>
</h1ML>

Struktur Folder Aturan Pemanggilan

5kC="chef.g1f", berarti file gambar
berada satu folder dengan file html

5kC="1mages/chef.g1f", berarti file
gambar berada pada folder anak dari file
html berada. Dalam hal ini file gambar
pada folder images

5kC="../chef.g1f", berarti file gambar
berada di folder yang diatas folder letak file
html
Modul Pemrograman Web
Halaman | 18

Struktur Folder Aturan Pemanggilan

5kC="../1mages/chef.g1f", berarti file
gambar dan file html terpisah folder namun
pada tingkat yang sama

5kC="../../../ofhe/1mages/chef.g1f",
sebaiknya penempatan semacam ini
dihindari


3.12. Link, Email Links, dan Image Links
Nama I11e Nama I11e Nama I11e Nama I11e : 11nk.hfm1
<h1ML>
<hLAD>
<1l1LL> L1nk, Lma11 L1nks, dan lmage L1nks </1l1LL>
</hLAD>
<8ODY>
<!-- Membuaf ha1aman L1nk -->
<A hkLI="hffp://WWW.nefCoo1.nef"><h4>ha1aman L1nk</h4></A>

<!-- L1nk ke ema11 seka11gus me1akukan 1n1s1a11sas1 -->
<!-- n11a1 subecf ema11 -->
<P>
5end me <A hkLI="ma11fo:masa1sdong0yahoo.com?subecf=he11o">
L-Ma11
</A>
</P>

<!-- Membuaf ha1aman L1nk menggunakan 1mages 11nk -->
<P ALlGN="cenfe"><!-- pos1s1 cenfe -->
Go fo <A hkLI="hffp://WWW.nefCoo1.nef">
<lMG 5kC="1mages\chef.g1f" WlD1h=130 hLlGh1=101>
</A></P>
<!-- Membuaf L1nk ke fomaf f11e -->
<A hkLI="cove.doc">DoWn1oad my esume</A><8k>
<!-- Membuaf L1nk dengan membuka W1ndoWs bau -->
Go fo <A hkLI="hffp://home.nefscape.com/"
1AkGL1="b1ank">Nefscape!</A>
</8ODY>
</h1ML>

3.13. More on Images, Image Filesizes, Thumbnails, Anchors
Nama I11e Nama I11e Nama I11e Nama I11e : moelmage.hfm1
<h1ML>
<hLAD>
<1l1LL> moe on 1mages, 1mage f11es1zes, fhumbna11s, anchos </1l1LL>
</hLAD>
<8ODY>
Modul Pemrograman Web
Halaman | 19
Nama I11e Nama I11e Nama I11e Nama I11e : moelmage.hfm1
<!-- membuaf ha1aman 11nk dg 1mages yg mem111k1 -->
<!-- 11ff1e b1ue dashes sbg empfy space -->
<!-- kaena </A> ganf1 ba1s ak1baf enfe-->
<!-- dan d1be1kan foo1 f1p fexf af1buf AL1 -->
<CLN1Lk>
<A hkLI="myhome.hfm1">
<lMG 5kC="1mages\myhome.g1f"
WlD1h="66" hLlGh1="23"
8OkDLk="0" AL1="home">
</A>
<A hkLI="ma11fo:me0my.house">
<lMG 5kC="1mages\myema11.g1f"
WlD1h="66" hLlGh1="23"
8OkDLk="0" AL1="Lma11">
</A>
<A hkLI="my11nks.hfm1">
<lMG 5kC="1mages\my11nks.g1f"
WlD1h="66" hLlGh1="23"
8OkDLk="0" AL1="L1nks">
</A>
</CLN1Lk>
</8ODY>
</h1ML>
Nama I11e Nama I11e Nama I11e Nama I11e : moelmage1.hfm1
<h1ML>
<hLAD>
<1l1LL> moe on 1mages, 1mage f11es1zes, fhumbna11s, anchos </1l1LL>
</hLAD>
<8ODY>
<!-- membuaf ha1aman 11nk dg 1mages fanpa mem111k1 -->
<!-- 11ff1e b1ue dashes sbg empfy space -->
<!-- kaena </A> d11efakan d1m safu ba1s fanpa enfe-->
<!-- dan d1be1kan foo1 f1p fexf af1buf AL1 -->
<CLN1Lk>
<A hkLI="myhome.hfm1"><lMG
5kC="1mages\myhome.g1f"
WlD1h="66" hLlGh1="23"
8OkDLk="0" AL1="home"></A>
<A hkLI="ma11fo:me0my.house"><lMG
5kC="1mages\myema11.g1f"
WlD1h="66" hLlGh1="23"
8OkDLk="0" AL1="Lma11"></A>
<A hkLI="my11nks.hfm1"><lMG
5kC="1mages\my11nks.g1f"
WlD1h="66" hLlGh1="23"
8OkDLk="0" AL1="L1nks"></A>
</CLN1Lk>
</8ODY>
</h1ML>
Nama I11e Nama I11e Nama I11e Nama I11e : moelmage2.hfm1
<h1ML>
<hLAD>
<1l1LL> moe on 1mages, 1mage f11es1zes, fhumbna11s, anchos </1l1LL>
</hLAD>
<8ODY>
<!-- membuaf ha1aman 11nk dg 1mages fanpa mem111k1 -->
<!-- empfy space kaena <A> d11efakan d1m -->
<!-- safu ba1s </A>sebe1umnya fanpa enfe -->
<!-- dan d1be1kan foo1 f1p fexf af1buf AL1 -->
Modul Pemrograman Web
Halaman | 20

Nama I11e Nama I11e Nama I11e Nama I11e : moelmage1.hfm1
<CLN1Lk>
<A hkLI="myhome.hfm1"><lMG
5kC="1mages\myhome.g1f"
WlD1h="66" hLlGh1="23"
8OkDLk="0" AL1="home"></A><A
hkLI="ma11fo:me0my.house"><lMG
5kC="1mages\myema11.g1f"
WlD1h="66" hLlGh1="23"
8OkDLk="0" AL1="Lma11"></A><A
hkLI="my11nks.hfm1"><lMG
5kC="1mages\my11nks.g1f"
WlD1h="66" hLlGh1="23"
8OkDLk="0" AL1="L1nks"></A>
</CLN1Lk>
</8ODY>
</h1ML>


3.14. Ordered dan Unordered Lists
Nama I11e Nama I11e Nama I11e Nama I11e : odeedunL1sf.hfm1
<h1ML>
<hLAD>
<1l1LL> odeed & unodeed 11sfs </1l1LL>
</hLAD>
<8ODY>
Mafe1 Pemogaman lnfenef
<!-- Add a pa1 of unodeed 11sf fags <uL> </uL>-->
<uL>
<!-- Add a 11sf 1fem -->
<Ll>lnfoducf1on
<Ll>hoW lnfenef Wok?
<Ll>h1ML
</uL>

<!-- Add a pa1 of odeed 11sf fags <uL> </uL>-->
<OL>
<!-- Add a 11sf 1fem -->
<Ll>Java5c1pf
<Ll>C55
<Ll>PhP
</OL>
</8ODY>
</h1ML>

3.15. Definition Lists
Nama I11e Nama I11e Nama I11e Nama I11e : def1neL1sf.hfm1
<h1ML>
<hLAD>
<1l1LL> Def1n1f1on 11sfs </1l1LL>
</hLAD>
<8ODY>
<DL> <!-- Def1n1f1on L1sf -->
<!-- Def1n1f1on 11f1e -->
<D1><8>10fh Amendmenf</8>
<!-- Def1n1f1on lfem -->
<DD>1he poWes nof de1egafed fo fhe un1fed 5fafes by fhe
Consf1fuf1on, no poh1b1fed by 1f fo fhe 5fafes, ae
eseved fo fhe 5fafes especf1ve1y, o fo fhe peop1e.
</DL>
Modul Pemrograman Web
Halaman | 21
Nama I11e Nama I11e Nama I11e Nama I11e : def1neL1sf.hfm1
</8ODY>
</h1ML>

3.16. Horizontal Rules
Nama I11e Nama I11e Nama I11e Nama I11e : ho1zonfa1ku1e.hfm1
<h1ML>
<hLAD>
<1l1LL> ho1zonfa1 u1es </1l1LL>
</hLAD>
<8ODY>
ho1zonfa1 ku1es
<hk><!-- ho1zonfa1 ku1es -->

<!-- ho1zonfa1 ku1es dg feW opf1ons ava11ab1e -->
<8k>ho1zonfa1 ku1es dg feW opf1ons ava11ab1e
<hk WlD1h=20x>
<hk WlD1h=50x>
<hk WlD1h=100x>
<hk WlD1h=20>
<hk WlD1h=50>
<hk WlD1h=100>

<!-- ho1zonfa1 ku1es dg af1buf ALlGN -->
<8k>ho1zonfa1 ku1es de af1buf ALlGN
<hk WlD1h=60x ALlGN="1eff">
<hk WlD1h=60x ALlGN="1ghf">
<hk WlD1h=60x ALlGN="cenfe">

<!-- ho1zonfa1 ku1es dg confo1 fhe fh1ckness of fhe 11ne -->
<8k>ho1zonfa1 ku1es dg confo1 fhe fh1ckness of fhe 11ne
<hk WlD1h=60x 5lZL=1>
<hk WlD1h=60x 5lZL=3>
<hk WlD1h=60x 5lZL=8>
<hk WlD1h=60x 5lZL=15>

<!-- ho1zonfa1 ku1es dg make 1f a so11d 11ne -->
<8k>ho1zonfa1 ku1es dg make 1f a so11d 11ne
<hk WlD1h=60x 5lZL=1 NO5hADL>
<hk WlD1h=60x 5lZL=3 NO5hADL>
<hk WlD1h=60x 5lZL=8 NO5hADL>
<hk WlD1h=60x 5lZL=15 NO5hADL>
</8ODY>
</h1ML>

Modul Pemrograman Web
Halaman | 22


3.17. Preformating
Nama I11e Nama I11e Nama I11e Nama I11e : peIomaf.hfm1
<h1ML>
<hLAD>
<1l1LL> Pefomaf1ng </1l1LL>
</hLAD>
<8ODY>
<!-- Menamp11kan pada boWse sesua1 dengan fomaf -->
<!-- pada ed1fo p1a1n fexf -->
<PkL>
///\\
{0 0}
+----oOO----{}-----------+
| Akl5 PuJl WlDODO |
| Io |
| Pes1denf |
+-----------------oOO-----+
|||
|| ||
ooO Ooo
</PkL>
</8ODY>
</h1ML>

3.18. Tables
Pada dasarnya terdapat 3 tag yang digunakan untuk membuat table pada dokumen web,
yaitu :
1. <1A8LL>
Merupakan tag utama yang digunakan untuk mendefinisikan tabel dengan beberapa
atribut seperti s1ze, bode W1dfh, dan sebagainya.
2. <1k>
TableRow mendefinisikan baris tabel secara horisontal yang kemudian dibagi-bagi secara
vertikal membentuk cell oleh <1D>
3. <1D>
TableData menyatakan cell tunggal.

Gambar 3.2. Ilustrasi Table pada Dokumen Web
Nama I11e Nama I11e Nama I11e Nama I11e : fab1e.hfm1
<h1ML>
<hLAD>
<1l1LL> Membuaf 1ab1e </1l1LL>
</hLAD>
<8ODY>
<1A8LL> <!-- Membuaf fab1e n11a1 8OkDLk=0 {defau1f}-->
<1k> <!-- 5ef1ap fab1e m1n1ma1 mem111k1 1 ba1s <1k> -->
<!-- 5ef1ap ba1s m1n1ma1 mem111k1 1 ce11 <1D> -->
<1D>My I1sf Ce11</1D>
</1k>
</1A8LL>
</8ODY>
</h1ML>
Modul Pemrograman Web
Halaman | 23

Nama I11e Nama I11e Nama I11e Nama I11e : fab1e1.hfm1
<h1ML>
<hLAD>
<1l1LL> Membuaf 1ab1e </1l1LL>
</hLAD>
<8ODY>
<!-- 1abe1 pefama -->
<!-- Membuaf fab1e dg af1buf 8OkDLk=3 dan WlD1h=100x-->
<!-- WlD1h=100x : safu 1aya penuh 1ebanya -->
1ab1e Pefama 1ab1e Pefama 1ab1e Pefama 1ab1e Pefama
<1A8LL 8OkDLk=3 WlD1h=100x>
<!-- ba1s pefama -->
<1k>
<!-- ba1s pefama Ce11 pefama -->
<!-- <1D> dg af1buf ALlGN dan vALlGN-->
<1D ALlGN="cenfe" vALlGN="m1dd1e">
I1sf koW I1sf Ce11
</1D>
<!-- ba1s pefama Ce11 kedua -->
<1D ALlGN="1eff" vALlGN="fop">
I1sf koW 5econd Ce11
</1D>
</1k>
<!-- ba1s kedua -->
<1k>
<!-- ba1s kedua Ce11 pefama -->
<1D ALlGN="1ghf" vALlGN="boffom">
5econd koW I1sf Ce11
</1D>
<!-- ba1s kedua Ce11 kedua -->
<1D ALlGN="cenfe" vALlGN="fop">
5econd koW 5econd Ce11
</1D>
</1k>
</1A8LL>
<8k>
<!-- 1abe1 kedua -->
1ab1e kedua 1ab1e kedua 1ab1e kedua 1ab1e kedua
<1A8LL 8OkDLk=2 WlD1h=25x hLlGh1=50x>
<1k>
<1D ALlGN="cenfe" vALlGN="m1dd1e">
<!-- Ce11 d1 1s1 dengan 1mages -->
<lMG 5kC="1mages\f1f1ep1c08.g1f" WlD1h=50x hLlGh1=50x
AL1="f1f1eP1c08">
</1D>
</1k>
</1A8LL>
<8k>
<!-- 1abe1 kef1ga -->
1ab1e kef1ga 1ab1e kef1ga 1ab1e kef1ga 1ab1e kef1ga
<1A8LL 8OkDLk=1 WlD1h=300 hLlGh1=75 >
<1k>
<!-- <1D> dg af1buf WlD1h -->
<1D WlD1h=60x>A1s</1D>
<1D WlD1h=20x>5h1nfa</1D>
<1D WlD1h=20x>k1ck</1D>
</1k>
<1k>
<1D>kenafa</1D>
<1D>Cu1y</1D>
<!-- &nbsp : 1 ka11 spas1 -->
<1D>&nbsp</1D>
Modul Pemrograman Web
Halaman | 24

Nama I11e Nama I11e Nama I11e Nama I11e : fab1e1.hfm1
</1k>
</1A8LL>
</8ODY>
</h1ML>

Nama I11e Nama I11e Nama I11e Nama I11e : fab1e2.hfm1
<h1ML>
<hLAD>
<1l1LL> Membuaf 1ab1e </1l1LL>
</hLAD>
<8ODY>
<!-- CLLLPADDlNG 1s fhe amounf of space befWeen -->
<!-- fhe bode of fhe ce11 and fhe confenfs of fhe ce11.-->
<!-- n11a1 CLLL5PAClNG dan CLLLPADDlNG s11ahkan anda -->
<!-- 1akukan peubahan dan amaf1 peubahannya -->
<1A8LL 8OkDLk=3 CLLL5PAClNG=12 CLLLPADDlNG=12 >
<1k>
<!-- <1D> dg af1buf WlD1h -->
<1D WlD1h=60x>A1s</1D>
<1D WlD1h=20x>5h1nfa</1D>
<1D WlD1h=20x>k1ck</1D>
</1k>
<1k>
<1D>kenafa</1D>
<1D>Cu1y</1D>
<1D>M1a</1D>
</1k>
</1A8LL>
</8ODY>
</h1ML>

Nama I11e Nama I11e Nama I11e Nama I11e : fab1e3.hfm1
<h1ML>
<hLAD>
<1l1LL> Membuaf 1ab1e </1l1LL>
</hLAD>
<8ODY>
<!-- membe1 Wana backgound 1ab1e,koW & Ce11 -->
<1A8LL 8GCOLOk="#II6633" CLLL5PAClNG=0 CLLLPADDlNG=5 >
<1k 8GCOLOk="#009900">
<!-- <1D> dg af1buf WlD1h -->
<1D 8GCOLOk="#9999II" WlD1h=60x>A1s</1D>
<1D WlD1h=20x>5h1nfa</1D>
<1D WlD1h=20x>k1ck</1D>
</1k>
<1k>
<1D>kenafa</1D>
<1D>Cu1y</1D>
<1D 8GCOLOk="#9999II">M1a</1D>
</1k>
</1A8LL>
</8ODY>
</h1ML>

Nama I11e Nama I11e Nama I11e Nama I11e : fab1e4.hfm1
<h1ML>
<hLAD>
<1l1LL> Membuaf 1ab1e </1l1LL>
</hLAD>
<8ODY>
Modul Pemrograman Web
Halaman | 25
Nama I11e Nama I11e Nama I11e Nama I11e : fab1e4.hfm1
<1A8LL 8OkDLk=0 WlD1h=100x>
<1k>
<1D WlD1h=40x ALlGN="1ghf">
<lMG 5kC="1mages\f1f1ep1c04.g1f" WlD1h=150 hLlGh1=138>
</1D>
<1D WlD1h=60x>
Pemogaman lnfenef
<uL>
<Ll>h1ML
<Ll>Java5c1pf
<Ll>PhP
<Ll>J5P
</uL>
</1D>
</1k>
</1A8LL>
</8ODY>
</h1ML>

Menampilkan image dengan layout seperti pada gambar 3.3. dengan tujuan untuk
mempercepat load image pada browser, hal ini disebabkan karena image yang besar
dipotong-potong menjadi bagian kecil-kecil dengan tidak mengurangi informasi aslinya.


Gambar 3.3. Layout Menampilkan Image

Nama I11e Nama I11e Nama I11e Nama I11e : fab1elmage.hfm1
<h1ML>
<hLAD>
<1l1LL> lmage Menggunakan 1abe1 </1l1LL>
</hLAD>
<8ODY>
<!-- Menamp11kan 1mage pada fab1e -->
<1A8LL 8OkDLk=0 CLLL5PAClNG=0 CLLLPADDlNG=0>
<CAP1lON ALlGN="fop"><ION1 5lZL=6><8>Nefscape vs.
M1cosoff?</8></ION1></CAP1lON>
<1k>
<!-- </1D> angan d1be1 efek enfe,1ka d1fekan -->
<!-- enfe ak1bafnya famp11an 1mage f1dak bagus -->
<!-- kOW5PAN=3 : menggabungkan 3 ba1s menad1 1 ba1s -->
<!-- COL5PAN=3 : menggabungkan 3 ce11 menad1 1 ce11 -->
<1D kOW5PAN=3>
<lMG 5kC="1mages/dagon4.g1f" WlD1h=250 hLlGh1=406></1D>
<1D>
<lMG 5kC="1mages/dagon3.g1f" WlD1h=122 hLlGh1=109></1D>
<1D kOW5PAN=3>
Modul Pemrograman Web
Halaman | 26

Nama I11e Nama I11e Nama I11e Nama I11e : fab1elmage.hfm1
<lMG 5kC="1mages/dagon5.g1f" WlD1h=219 hLlGh1=406></1D>
</1k>
<1k>
<1D>
<lMG 5kC="1mages/an1dag.g1f" WlD1h=122 hLlGh1=50></1D>
</1k>
<1k>
<1D>
<lMG 5kC="1mages/dagon2.g1f" WlD1h=122 hLlGh1=247></1D>
</1k>
</1A8LL>
</8ODY>
</h1ML>


3.19. Forms
Konstruksi dasar form HTML adalah :
<IOkM> <IOkM> <IOkM> <IOkM> -- pembukaan form --
<lNPu1> <lNPu1> <lNPu1> <lNPu1> -- bermacam-macam tipe inputan --
</IOkM> </IOkM> </IOkM> </IOkM> -- penutupan form -

Nama I11e Nama I11e Nama I11e Nama I11e : fom.hfm1
<h1ML>
<hLAD>
<1l1LL> Membuaf komponen-komponen IOkM </1l1LL>
</hLAD>
<8ODY>
<!-- saaf d1fekan subm1f boffons akan membuka ha1aman fom.hfm1-->
<IOkM AC1lON="fom.hfm1">

<8>lnpuf 1exf 8ox</8><8k>
<!-- 1npuf fexf box dengan fype ad1 fexf seka11gus 1n1s1a11sas1-->
<lNPu1 1YPL="fexf" NAML="ADDkL55" vALuL="J1. 8anasa1 50" 5lZL=20>
<!-- MAXLLNG1h=10 : maks1mum kaakfe pd 1npuf fexf box-->
<lNPu1 1YPL="fexf" NAML="ADDkL55" 5lZL=15 MAXLLNG1h=10>
<!-- 1npuf fexf box dengan fype ad1 passWod -->
<lNPu1 1YPL="passWod" NAML="u5LkPA55" MAXLLNG1h=10>
<!-- 1npuf fexf box dengan fype ad1 h1dden -->
<!-- f1dak d1famp11kan pada boWse -->
<lNPu1 1YPL="h1dden" NAML="LOCA1lON" vALuL="u5A Iom">
<8k><8k>

<8>kad1o 8uffons</8>
<!-- kad1o 8uffons dengan membe1 n11a1 defau1f ChLCkLD -->
<8k><lNPu1 1YPL="ad1o" NAML="bahasa" vALuL="C" ChLCkLD>8ahasa C
<8k><lNPu1 1YPL="ad1o" NAML="bahasa" vALuL="CPP">8ahasa C++
<8k><lNPu1 1YPL="ad1o" NAML="bahasa" vALuL="Java">8ahasa Java
<8k><8k>

<8>Checkbox</8>
<!-- Checkbox dgn membe1 n11a1 defau1f ChLCkLD 1eb1h da1 1 -->
<8k><lNPu1 1YPL="checkbox" NAML="C" vALuL="YL5" ChLCkLD>8ahasa C
<8k><lNPu1 1YPL="checkbox" NAML="CPP" vALuL="YL5">8ahasa C++
<8k><lNPu1 1YPL="checkbox" NAML="Java" vALuL="YL5" ChLCkLD>8ahasa
Java
<8k><lNPu1 1YPL="checkbox" NAML="Ada" vALuL="YL5">8ahasa Ada
<8k><8k>

<8>Pu11 DoWn L1sf</8><8k>
Modul Pemrograman Web
Halaman | 27
Nama I11e Nama I11e Nama I11e Nama I11e : fom.hfm1
<!-- 5LLLC1 dgn membe1 n11a1 defau1f 5LLLC1LD -->
<!-- 5LLLC1 dapaf d1be1 af1buf 5lZL, 1akukan peubahan -->
<!-- <5LLLC1 NAML="bahasa" 5lZL=4> amaf1 peubahannya -->
<5LLLC1 NAML="bahasa">
<OP1lON vALuL="C">8ahasa C
<OP1lON vALuL="CPP">8ahasa C++
<OP1lON vALuL="Java" 5LLLC1LD>8ahasa Java
<OP1lON vALuL="Ada">8ahasa Ada
</5LLLC1>
<8k><8k>

<8>1exf Aea</8><8k>
<!-- 1exfaea, n11a1 WkAP=had/soff/off-->
<1LX1AkLA NAML="COMMLN15" kOW5=3 COL5=30 WkAP="had">
</1LX1AkLA>
<8k><8k>
<!-- mengamb11 nama f11e da1 d1ve -->
<lNPu1 1YPL=IlLL NAML="myf11e"><8k><8k>
<!-- subm1f buffons, AC1lON membuka fom.hfm1 -->
<lNPu1 1YPL="subm1f" vALuL="5end fo">
<!-- esef buffons -->
<lNPu1 1YPL="esef" vALuL="C1ea">
<!-- subm1f buffons menggunakan 1mage -->
<!-- AC1lON membuka fom.hfm1 -->
<lNPu1 1YPL="1mage" 5kC="1mages\subm1f.g1f" WlD1h=94 hLlGh1=26
8OkDLk=0 AL1="5ubm1f">
</IOkM>
</8ODY>
</h1ML>

3.20. Frames
Tag HTML yang digunakan untuk membuat frame adalah <FRAMESET> dan <FRAME>.
Nama I11e Nama I11e Nama I11e Nama I11e : fameCo1.hfm1
<!-- membuaf fame bedasakan ko1om -->
<IkAML5L1 COL5="10x,20x,30x,15x,25x">
<!-- 1eba ko1om 10 x -->
<IkAML 5kC="11nk.hfm1">
<!-- 1eba ko1om 20 x -->
<IkAML 5kC="fab1e.hfm1">
<!-- 1eba ko1om 30 x -->
<IkAML 5kC="fab1e1.hfm1">
<!-- 1eba ko1om 15 x -->
<IkAML 5kC="fab1e2.hfm1">
<!-- 1eba ko1om 25 x -->
<IkAML 5kC="fab1e3.hfm1">
</IkAML5L1>
Nama I11e Nama I11e Nama I11e Nama I11e : famekoW.hfm1
<!-- membuaf fame bedasakan ba1s -->
<IkAML5L1 kOW5="10x,20x,30x,15x,25x">
<!-- 1eba ba1s 10 x -->
<IkAML 5kC="11nk.hfm1">
<!-- 1eba ba1s 20 x -->
<IkAML 5kC="fab1e.hfm1">
<!-- 1eba ba1s 30 x -->
<IkAML 5kC="fab1e1.hfm1">
<!-- 1eba ba1s 15 x -->
<IkAML 5kC="fab1e2.hfm1">
<!-- 1eba ba1s 25 x -->
<IkAML 5kC="fab1e3.hfm1">
</IkAML5L1>

Modul Pemrograman Web
Halaman | 28

Nama I11e Nama I11e Nama I11e Nama I11e : fameGap.hfm1
<!-- membuaf fame bedasakan ba1s dan ko1om -->
<IkAML5L1 COL5="50,",2"">
<IkAML 5kC="fab1e3.hfm1">
<IkAML 5kC="fab1e.hfm1">
<IkAML5L1 kOW5="50x,50x">
<IkAML 5kC="fab1e1.hfm1">
<IkAML 5kC="fab1e2.hfm1">
</IkAML5L1>
</IkAML5L1>

Nama I11e Nama I11e Nama I11e Nama I11e : fameGap1.hfm1
<IkAML5L1 kOW5="60,"">
<IkAML 5kC="fab1e.hfm1" NAML="fop">
<IkAML5L1 COL5="160,"">
<IkAML 5kC="fab1e1.hfm1" NAML="1eff">
<IkAML 5kC="fab1e2.hfm1" NAML="ma1n">
</IkAML5L1>
</IkAML5L1>



Modul Pemrograman Web
Halaman | 29
BAB 4
Cascading Style Sheets (CSS)

CSS digunakan untuk mengorganisasikan dan mengontrol tampilan dokumen HTML
secara efisien, sehingga dengan CSS dapat dilakukan sebagai berikut :
Menambahkan style tampilan HTML.
Melakukan perubahan ulang style web sites secara keseluruhan dengan hanya
beberapa perubahan kode CSS.
Menggunakan style pada halaman yang diinginkan.

Style sheets dapat secara penuh dipisahkan dari dokumen HTML. Pada saat, kita memiliki
master CSS dan HTML, kita dapat memisahkan perancangan dan format (CSS) halaman
web dari contents (HTML).

4.1. Internal CSS
Untuk memformat halaman HMML dengan menggunakan CSS dapat dilakukan dengan
cara internal, eksternal, dan inline. Pada bagian ini akan di bahas tentang pembuatan
CSS secara internal. Untuk pembuatan CSS secara internal harus ditambahkan tag
<sfy1e> yang diletakan diantara tag <head> dan </head>, seperti yang diberikan pada
kode sumber 4.1.

Nama File : cssLatih01.html
<hfm1>
<head>
<sfy1e fype="fexf/css"> <sfy1e fype="fexf/css"> <sfy1e fype="fexf/css"> <sfy1e fype="fexf/css">
< << <!-- -- -- --Pendef1n1s1an Iomaf ha1aman dengan C55 secaa 1nfena1-->
</sfy1e> </sfy1e> </sfy1e> </sfy1e>
</head>
<body>
<p>You pages confenf!</p>
</body>
</hfm1>
Kode Sumber 4.1. Pendefinisian CSS Secara Internal

Kode CSS tidak dituliskan secara sama dengan kode HTML, hal ini disebabkan karena
CSS bukan HTML, tetapi sebagai langkah untuk melakukan manipulasi HTML yang sudah
ada. Untuk contoh sederhana diberikan pada kode sumber 4.2. dan 4.3.

Nama File : cssLatih02.html
<hfm1>
<head>
<sfy1e fype="fexf/css">
p {co1o: Wh1fe }
body {backgound-co1o: b1ack }
</sfy1e>
</head>
<body>
<p>1eks beWana Puf1h dengan 8ackgound beWana h1fam!</p>
</body>
</hfm1>
Kode Sumber 4.2. Contoh Sederhana CSS Secara Internal

Pada kode sumber 4.2. dan 4.3. tag HTML yang dilakukan manipulasi adalah tag BODY
dan P, dimana secara umum format CSS adalah :
"HTML tag" { "CSS Property" : "Value" ; }
Modul Pemrograman Web
Halaman | 30


Nama File : cssLatih03.html
<hfm1>
<head>
<sfy1e>
body { backgound-co1o: b1ue }
p { co1o: Wh1fe }
</sfy1e>
</head>
<body>
<h2>lnfena1 C55</h2>
<p>ha1aman 1n1 menggunkan 1nfena1 C55. Menggunakan sfy1e fag dapaf
unfuk me1akukan mod1f1kas1 e1emen-e1emen h1ML yang d1famp11kan.</p>
</body>
</hfm1>
Kode Sumber 4.3. Contoh Sederhana CSS Secara Internal

4.2. Eksternal CSS
Pada saat menggunakan CSS disarankan lebih baik untuk memisahkan CSS dengan
HTML. Penempatan CSS di dalam suatu file terpisah mengijinkan seorang perancang web
dengan sepenuhnya untuk membedakan antara contents (HTML) dan design (CSS).
Alasan menggunakan eksternal CSS: Untuk memelihara designs dan contents secara
terpisah, Mudah menggunakan kode CSS untuk setiap halaman web dengan format yang
sama, Mempermudah perubahan secara drastis terhadap halaman web dengan hanya
melakukan beberapa perubahan pada file tunggal CSS. Eksternal CSS adalah file yang
hanya berisi kode-kode CSS dan di simpan dengan ektensi file .css. File CSS melakukan
references ke HTML menggunakan <link> sesuai dengan <style> yang didefinisikan.
Untuk contoh sederhana diberikan pada kode sumber 4.4. dan 4.5.

Nama File : latihCSS01.css
body{ backgound-co1o: gay }
p { co1o: b1ue }
h3{ co1o: Wh1fe }
Kode Sumber 4.4. Pendefinisian CSS dalam File Terpisah

Nama File : cssLatih04.html
<hfm1>
<head>
<11nk e1="sfy1esheef" fype="fexf/css" hef="1af1hC5501.css" />
</head>
<body>
<h3> heade beWana Puf1h </h3>
<p> Paagaph 1n1 dengan fonf beWana 81u. Wana backgound ha1aman
1n1 ada1ah Gay kaena d11akukan peubahan dengan C55! </p>
</body>
</hfm1>
Kode Sumber 4.5. Contoh Sederhana CSS Secara Eksternal

4.3. Inline CSS
Inline CSS adalah menempatkan kode-kode CSS di dalam HTML. Inline CSS memiliki
prioritas tertinggi dibandingkan dengan internal CSS dan eksternal CSS, hal ini berarti
bahwa style yang didefinisikan pada internal CSS dan eksternal CSS dapat dilakukan
override oleh inline CSS. Inline CSS bertentangan dengan tujuan CSS yang sebenarnya,
sehingga dalam penggunaannya harus hati-hati. Format penulisan inline CSS adalah :
<hfm1fag sfy1e="csspopefy1: va1ue csspopefy2: va1ue"> </hfm1fag> <hfm1fag sfy1e="csspopefy1: va1ue csspopefy2: va1ue"> </hfm1fag> <hfm1fag sfy1e="csspopefy1: va1ue csspopefy2: va1ue"> </hfm1fag> <hfm1fag sfy1e="csspopefy1: va1ue csspopefy2: va1ue"> </hfm1fag>
Modul Pemrograman Web
Halaman | 31
Untuk contoh penggunaan inline CSS diberikan pada kode sumber 4.6., dan 4.7.

Nama File : cssLatih05.html
<hfm1>
<head>
<body>
<p sfy1e="backgound: b1ue co1o: Wh1fe">Wana backgound and fonf
dengan 1n11ne C55</p>
<!-- 11dak Dapaf 8ekea-->
<p sfy1e="backgound: u1{"11nksboff111.g1f"}">
1h1s 1s boken : {backgound menggunakan 1mage}</p>
<!-- Dapaf 8ekea-->
<p sfy1e="backgound: u1{11nksboff111.g1f}">
1h1s 1s Wok1ng : {backgound menggunakan 1mage}</p>
</body>
</hfm1>
Kode Sumber 4.6. Contoh Sederhana CSS Secara Inline

Nama File : cssLatih06.html
<hfm1>
<head>
<sfy1e>
</sfy1e>
</head>
<body>
<p sfy1e="backgound: b1ue co1o: Wh1fe">Wana backgound and fonf
dengan 1n11ne C55</p>
<!--f11e 11nksboff111.g1f beada pada fo1de-->
<!--C:\apache\hfdocs\1af1han\-->
<!--Dapaf bekea dengan bena 1ka apache uga d1 kuN-->

<!--11dak dapaf bekea-->
<p sfy1e="backgound:
u1{"hffp://1oca1hosf/1af1han/11nksboff111.g1f"}">
1h1s 1s boken : hffp://1oca1hosf/1af1han/11nksboff111.g1f</p>

<!--Dapaf bekea-->
<p sfy1e="backgound:
u1{hffp://1oca1hosf/1af1han/11nksboff111.g1f}">
1h1s 1s Wok1ng : hffp://1oca1hosf/1af1han/11nksboff111.g1f</p>
</body>
</hfm1>
Kode Sumber 4.7. Varian Contoh Sederhana CSS Secara Inline

4.4. CSS Classes
CSS memungkinkan untuk melakukan manipulasi elemen HTML dengan banyak efek,
misalnya pada satu sisi diinginkan font ukuran besar dengan warna putih, dan pada sisi
lain diinginkan font ukuran kecil dengan warna hitam. Secara normal CSS tidak
memperbolehkan melakukan format yang berbeda untuk satu tag HTML. Untuk
memberikan efek format yang banyak terhadap satu tag HTML dapat dilakukan dengan
menggunakan classes yang didefinisikan di dalam kode CSS, seperti yang diberikan pada
kode sumber 4.8.

Nama File : cssLatih07.html
<hfm1>
<head>
<!--Pendef1n1s1an fomaf fag h1ML unfuk <P> -->
<sfy1e>
p.safu { backgound-co1o: gay co1o: ed fonf-s1ze: 20px}
Modul Pemrograman Web
Halaman | 32

p.dua { backgound-co1o: ed }
p.f1ga {
backgound: pup1e
co1o: Wh1fe
}
p.empaf{ co1o: b1ue }
p.11ma{ fonf-s1ze: 12px }
p.enam{ co1o: ed fonf-s1ze: 20px }
</sfy1e>
</head>
<body>
<h2>C55 Menggunakan C1asses</h2>
<!--Penggunaan fomaf fag h1ML bedasakan sfy1e-->
<p c1ass="safu">ln1 ada1ah paagaph p.safu</p>
<p c1ass="dua">ln1 ada1ah paagaph p.dua</p>
<p c1ass="f1ga">ln1 ada1ah paagaph p.f1ga</p>
<p c1ass="empaf">ln1 ada1ah paagaph p.empaf</p>
<p c1ass="11ma">ln1 ada1ah paagaph p.11ma</p>
<p c1ass="enam">ln1 ada1ah paagaph p.enam</p>
</body>
</hfm1>
Kode Sumber 4.8. Contoh Sederhana CSS Menggunakan Classes

4.5. CSS Background
Background pada suatu halaman web adalah merupakan bagian yang penting, dengan
menggunakan CSS dapat dilakukan setting background menggunakan warna atau
gambar sebagai elemen dari CSS. CSS dapat digunakan untuk menampilkan background
gambar, menampilkan background secara berulang baik horizontal, vertical, atau bukan
kedua-duanya, menampilkan background sebagai fixed position atau secara scroll. Untuk
contoh sederhana CSS background dan variannya diberikan pada kode sumber 4.9.,
4.10., 4.11., 4.12., 4.13., dan 4.14.

Nama File : cssLatih08.html
<hfm1>
<head>
<!--Pendef1n1s1an fomaf fag h1ML unfuk-->
<sfy1e>
h4 { backgound-co1o: ye11oW }
p { backgound-co1o: #1078L1 }
u1 { backgound-co1o: gb{ 149, 206, 145} }
</sfy1e>
</head>
<body>
<h4>ln1 ada1ah fag h4 menggunakan backgound Ye11oW</h4>
<!--Penggunaan fomaf fag h1ML bedasakan sfy1e-->
<p>ln1 ada1ah paagaph</p>
<u1>
<11>8u11ef Nomo 5afu</11>
<11>8u11ef Nomo Dua</11>
</u1>
</body>
</hfm1>
Kode Sumber 4.9. Contoh Sederhana CSS Untuk Background Warna

Pada kode sumber 4.9. untuk mendefinisikan format background-color dapat digunakan
dengan tiga cara, yaitu : color name, nilai hexadecimal (dimulai dengan tanda (#) dan
terdiri dari 6 nilai hexsadesima (0 - F) ), dan RGB (adalah Red Blue Green dengan range
untuk setiap nilai adalah 0-255).
Modul Pemrograman Web
Halaman | 33

Nama File : cssLatih09.html
<hfm1>
<head>
<!--Pendef1n1s1an fomaf fag h1ML unfuk-->
<sfy1e>
p { backgound-1mage: u1{11nksboff111.g1f} }
h4{ backgound-1mage:
u1{hffp://1oca1hosf/1af1han/11nksboff111.g1f} }
</sfy1e>
</head>
<body>
<!--Penggunaan fomaf fag h1ML bedasakan sfy1e-->
<h4>ln1 ada1ah fag h4 menggunakan backgound lmage</h4>
<p>ln1 ada1ah paagaph menggunakan backgound lmage</p>
</body>
</hfm1>
Kode Sumber 4.10. Contoh Sederhana CSS Untuk Background Image

Nama File : cssLatih10.html
<hfm1>
<head>
<!--Pendef1n1s1an fomaf fag h1ML unfuk-->
<sfy1e>
p { backgound-1mage: u1{11nksboff111.g1f}
backgound-epeaf: epeaf
}
h4 { backgound-1mage: u1{11nksboff111.g1f}
backgound-epeaf: epeaf-y
}
o1 { backgound-1mage: u1{11nksboff111.g1f}
backgound-epeaf: epeaf-x }
u1 { backgound-1mage: u1{11nksboff111.g1f}
backgound-epeaf: no-epeaf
}
</sfy1e>
</head>
<body>
<!--Penggunaan fomaf fag h1ML bedasakan sfy1e-->
<p>ln1 ada1ah paagaph menggunakan backgound lmage</p>
<h4>ln1 ada1ah fag h4 menggunakan backgound lmage dg epeaf
vef1ka1{y}</h4>
<o1>
<11>Odeed 11sf</11>
<11>Dengan backgound kepeaf</11>
<11>5ecaa ho1sonfa1 {x}</11>
</o1>
<u1>
<11>unOdeed 11sf</11>
<11>Dengan backgound kepeaf</11>
<11>ne1fhe d1ecf1on</11>
</u1>
</body>
</hfm1>
Kode Sumber 4.11. Contoh Sederhana CSS Untuk Background Image Berulang

Pada kode sumber 4.11. image background dapat dilakukan secara horizontal (x),
vertical (y), antara kedua-duanya, atau tidak kedua-duanya.

Nama File : cssLatih11.html
Modul Pemrograman Web
Halaman | 34

<hfm1>
<head>
<!--Pendef1n1s1an fomaf fag h1ML unfuk-->
<sfy1e>
fexfaea.no5co11 { backgound-1mage: u1{11nksboff111.g1f}
backgound-affachmenf: f1xed
}
fexfaea { backgound-1mage: u1{11nksboff111.g1f}
backgound-affachmenf: sco11
}
</sfy1e>
</head>
<body>
<!--Penggunaan fomaf fag h1ML bedasakan sfy1e-->
<fexfaea name="fexfaea"></fexfaea>
<fexfaea name="fexfaea1"></fexfaea>
</body>
</hfm1>
Kode Sumber 4.12. Contoh Sederhana CSS Untuk Fixed Background Image

Pada kode sumber 4.12. fixed background image scroll tidak dapat bekerja pada
kebanyakan browser, kecuali Internet Explorer 6.0 dapat ditampilkan secara benar.

Nama File : cssLatih12.html
<hfm1>
<head>
<!--Pendef1n1s1an fomaf fag h1ML unfuk-->
<sfy1e>
p {
backgound-1mage: u1{11nksboff111.g1f}
backgound-pos1f1on: 20px 10px
}
h4 { backgound-1mage: u1{11nksboff111.g1f}
backgound-pos1f1on: 30x 30x
}
o1 { backgound-1mage: u1{11nksboff111.g1f}
backgound-pos1f1on: fop cenfe
}
</sfy1e>
</head>
<body>
<!--Penggunaan fomaf fag h1ML bedasakan sfy1e-->
<p>ln1 ada1ah paagaph menggunakan backgound lmage Pos1f1on</p>
<h4>ln1 ada1ah fag h4 menggunakan backgound lmage Pos1f1on</h4>
<o1>
<11>Odeed 11sf</11>
<11>Dengan backgound Pos1f1on</11>
<11>Menggunakan keyWods</11>
</o1>
</body>
</hfm1>
Kode Sumber 4.13. Contoh Sederhana CSS Untuk Background Position

Pada kode sumber 4.13. untuk menempatkan posisi image background dapat
menggunakan pixel, (A)px lokasi pixel dari kiri screen dan (B)px lokasi pixel dari atas
screen, dengan A dan B adalah bilangan integer. Atau dapat menggunkan persentase,
A% lokasi dari kiri screen dan B% lokasi dari atas screen, dengan A dan B adalah
bilangan integer. Dan dapat juga menggunakan positioning keywords : top, right,
bottom, left, and center.
Modul Pemrograman Web
Halaman | 35

Nama File : cssLatih13.html
<hfm1>
<head>
<sfy1e>
body { backgound-co1o: b1ack }
p { backgound-co1o: ye11oW }
h2 { backgound-co1o: ed }
u1 { backgound-1mage: u1{11nksboff111.g1f}
backgound-epeaf: epeaf-y
co1o: geen
}
</sfy1e>
</head>
<body>
<h2>C55 8ackgounds</h2>
<p>8ackgound ha1aman 1n1 ada1ah b1ack. Wana backgound, paagaph
dan heade dapaf d11akukan peubahan sesua1 ke1ng1nan.</p>
<u1>
<11>L1sf mem111k1 1mage sebe1ah k11</11>
<11>kaena efek epeaf-y</11>
<11>Dan f1dak epeaf-x</11>
</u1>
</body>
</hfm1>
Kode Sumber 4.14. Contoh Sederhana CSS Untuk Varian Background

4.6. CSS Font
CSS dapat digunakan untuk melakukan pengaturan terhadap text yang ditampilkan pada
browser, baik dari sisi warna, ukuran, jenis huruf, format huruf, dan lain sebagainya,
seperti yang diberikan pada kode sumber 4.15., 4.16., 4.17., 4.18., 4.19., dan 4.20.
Nama File : cssLatih14.html
<hfm1>
<head>
<!--Pendef1n1s1an fomaf fag h1ML unfuk-->
<sfy1e>
body { backgound-1mage: u1{bg-kof.g1f}}
h3 { co1o: ed }
h4 { co1o: #9000A1}
h5 { co1o: gb{0, 220, 98}}
</sfy1e>
</head>
<body>
<!--Penggunaan fomaf fag h1ML bedasakan sfy1e-->
<h2>C55 Ionfs Co1o</h2>
<h3>ln1 ada1ah heade h3 menggunakan co1o: ed</h3>
<h4>ln1 ada1ah heade h4 menggunakan co1o: #9000A1</h4>
<h5>ln1 ada1ah heade h5 menggunakan co1o: gb{0, 220, 98}</h5>
</body>
</hfm1>
Kode Sumber 4.15. Contoh Sederhana CSS Font Color

Pada kode sumber 4.15 untuk mendefinisikan format color dapat digunakan dengan tiga
cara, yaitu : color name, nilai hexadecimal (dimulai dengan tanda (#) dan terdiri dari 6
nilai hexsadesima (0 - F) ), dan RGB (adalah Red Blue Green dengan range untuk setiap
nilai adalah 0-255).

Nama File : cssLatih15.html
<hfm1>
Modul Pemrograman Web
Halaman | 36

<head>
<!--Pendef1n1s1an fomaf fag h1ML unfuk-->
<sfy1e>
body { backgound-1mage: u1{bg-kof.g1f}}
h3 { fonf-fam11y: sans-se1f }
h4 { fonf-fam11y: se1f }
h5 { fonf-fam11y: a1a1 }
</sfy1e>
</head>
<body>
<!--Penggunaan fomaf fag h1ML bedasakan sfy1e-->
<h2>C55 Ionfs Iam11y</h2>
<h3>ln1 ada1ah heade h3 menggunakan fonf-fam11y : sans-se1f</h3>
<h4>ln1 ada1ah heade h4 menggunakan fonf-fam11y : se1f</h4>
<h5>ln1 ada1ah heade h5 menggunakan fonf-fam11y : a1a1</h5>
</body>
</hfm1>
Kode Sumber 4.16. Contoh Sederhana CSS Font Family

Font family dalam CSS dibagi menjadi dua kelompok : sans-serif yang merupakan font
dengan ukuran besar, dan serif yang merupakan font dengan ukuran kecil, seperti yang
diberikan pada kode sumber 4.16. Untuk san-serif lebih mudah dibaca di monitor
computer dibandingkan dengan serif.

Nama File : cssLatih16.html
<hfm1>
<head>
<!--Pendef1n1s1an fomaf fag h1ML unfuk-->
<sfy1e>
body { backgound-1mage: u1{bg-kof.g1f}}
p { fonf-s1ze: 120x }
o1 { fonf-s1ze: 14px }
u1 { fonf-s1ze: x-1age }
</sfy1e>
</head>
<body>
<!--Penggunaan fomaf fag h1ML bedasakan sfy1e-->
<h2>C55 Ionfs 51ze</h2>
<p>Paagaph menggunakan ukuan fonf-s1ze 120x</p>
<o1>
<11>ln1 ada1ah Odeed</11>
<11>Dengan fonf-s1ze ada1ah</11>
<11>14px</11>
</o1>
<u1>
<11>ln1 ada1ah L1sf</11>
<11>Dengan fonf-s1ze ada1ah</11>
<11>x-1age</11>
</u1>
</body>
</hfm1>
Kode Sumber 4.17. Contoh Sederhana CSS Font Size

Pada kode sumber 4.17. untuk melakukan manipulasi ukuran font dapat digunakan nilai
(ukuran font tidak terpengaruh pada saat browser dirubah ukuran font-nya), persentase
(ukuran font terpengaruh pada saat browser dirubah ukuran font-nya), atau key terms
(ukuran font terpengaruh pada saat browser dirubah ukuran font-nya). Key terms dapat
meliputi xx-large, x-large, large, medium, small, x-small, dan xx-small.
Modul Pemrograman Web
Halaman | 37

Nama File : cssLatih17.html
<hfm1>
<head>
<!--Pendef1n1s1an fomaf fag h1ML unfuk-->
<sfy1e>
body { backgound-1mage: u1{bg-kof.g1f}}
p { fonf-sfy1e: 1fa11c }
h4{ fonf-sfy1e: ob11que }
</sfy1e>
</head>
<body>
<!--Penggunaan fomaf fag h1ML bedasakan sfy1e-->
<h2>C55 Ionfs 5fy1e</h2>
<p>Paagaph menggunakan fonf-sfy1e : 1fa11c</p>
<h4>ln1 ada1ah heade h4 menggunakan fonf-sfy1e : ob11que</h4>
</body>
</hfm1>
Kode Sumber 4.18. Contoh Sederhana CSS Font Style

Pada kode sumber 4.18. untuk mendefinisikan font style italic atau bukan, key terms
yang digunakan dapat meliputi italic, oblique, dan normal.

Nama File : cssLatih18.html
<hfm1>
<head>
<!--Pendef1n1s1an fomaf fag h1ML unfuk-->
<sfy1e>
body { backgound-1mage: u1{bg-kof.g1f}}
p { fonf-We1ghf: 100 }
u1{ fonf-We1ghf: bo1de }
</sfy1e>
</head>
<body>
<!--Penggunaan fomaf fag h1ML bedasakan sfy1e-->
<h2>C55 Ionfs We1ghf</h2>
<p>Paagaph menggunakan fonf-We1ghf : 100</p>
<u1>
<11>ln1 ada1ah L1sf</11>
<11>Dengan fonf-We1ghf ada1ah</11>
<11>bo1de{1eba1}</11>
</u1>
</body>
</hfm1>
Kode Sumber 4.19. Contoh Sederhana CSS Font Weight

Pada kode sumber 4.19. untuk mendefinisikan ketebalan font dapat digunakan font-
weight, yang nilainya pada range 100(thin) - 900(thick), atau dapat menggunakan key
terms untuk font-weight bold, bolder, dan normal.

Nama File : cssLatih19.html
<hfm1>
<head>
<!--Pendef1n1s1an fomaf fag h1ML unfuk-->
<sfy1e>
body { backgound-1mage: u1{bg-kof.g1f}}
p { fonf-va1anf: sma11-caps }
</sfy1e>
</head>
Modul Pemrograman Web
Halaman | 38

<body>
<!--Penggunaan fomaf fag h1ML bedasakan sfy1e-->
<h2>C55 Ionfs va1anf</h2>
<p>Paagaph menggunakan fonf-va1anf : sma11-caps</p>
</body>
</hfm1>
Kode Sumber 4.20. Contoh Sederhana Variant CSS Font

Variant CSS font mengijinkan untuk mengkonversi font huruf kecil menjadi font huruf
besar (caps lock) seperti pada kode sumber 4.20., tetapi tidak semua font mendukung
variant CSS font, sehingga sebelum di publish sebaiknya dilakukan pengecekan terlebih
dahulu.

4.7. CSS Text
CSS text digunakan untuk melakukan pengontrolan terhadap spacing, decoration, dan
alignment dari suatu text.
Pada halaman web underline biasanya merupakan halaman link, tetapi untuk membuat
underline tanpa merupakan halaman link dapat menggunakan text-decoration, dimana
underline dapat diletakan di atas, di tengah, atau di bawah dari text, seperti yang
diberikan pada kode sumber 4.21.

Nama File : cssLatih20.html
<hfm1>
<head>
<!--Pendef1n1s1an fomaf fag h1ML unfuk-->
<sfy1e>
body { fonf-fam11y: se1f
backgound-1mage: u1{bg-kof.g1f}}
h3{ fexf-decoaf1on: 11ne-fhough }
h4{ fexf-decoaf1on: ove11ne }
h5{ fexf-decoaf1on: unde11ne }
a { fexf-decoaf1on: none }
</sfy1e>
</head>
<body>
<!--Penggunaan fomaf fag h1ML bedasakan sfy1e-->
<h2>C55 fexf-decoaf1on</h2>
<h3>ln1 ada1ah heade h3 menggunakan fexf-decoaf1on : 11ne-
fhough</h3>
<h4>ln1 ada1ah heade h4 menggunakan fexf-decoaf1on : ove11ne</h4>
<h5>ln1 ada1ah heade h5 menggunakan fexf-decoaf1on : unde11ne</h5>
<a hef="">ln1 ada1ah C55 L1nk menggunakan fexf-decoaf1on :
none</a>!
</body>
</hfm1>
Kode Sumber 4.21. Contoh Sederhana CSS Text-Decoration

Untuk mendefinisikan indent pada suatu paragraph tanpa menggunakan format tag HTML
atau menggunakan spasi secara manual, dapat digunakan CSS text-indent yang dapat
direpresentasikan dengan nilai exact atau dengan persentase, disarankan lebih baik
menggunakan nilai exact, seperti yang diberikan pada kode sumber 4.22.

Nama File : cssLatih21.html
<hfm1>
<head>
<!--Pendef1n1s1an fomaf fag h1ML unfuk-->
Modul Pemrograman Web
Halaman | 39
<sfy1e>
body { fonf-fam11y: se1f
backgound-1mage: u1{bg-kof.g1f}}
p { fexf-1ndenf: 20px }
h5 { fexf-1ndenf: 30x }
</sfy1e>
</head>
<body>
<!--Penggunaan fomaf fag h1ML bedasakan sfy1e-->
<h2>C55 fexf-1ndenf</h2>
<p>ln1 ada1ah paagaph P menggunakan fexf-1ndenf : 20px. ln1 ada1ah
paagaph P menggunakan fexf-1ndenf : 20px. ln1 ada1ah paagaph P
menggunakan fexf-1ndenf : 20px. ln1 ada1ah paagaph P menggunakan
fexf-1ndenf : 20px.</p>
<h5>ln1 ada1ah heade h5 menggunakan fexf-1ndenf : 30x. ln1 ada1ah
heade h5 menggunakan fexf-1ndenf : 30x. ln1 ada1ah heade h5
menggunakan fexf-1ndenf : 30x. ln1 ada1ah heade h5 menggunakan fexf-
1ndenf : 30x.</h5>
</body>
</hfm1>
Kode Sumber 4.22. Contoh Sederhana CSS Text-Indent

Nilai default yang diberikan untuk menuliskan text adalah rata kiri, tetapi dapat
dilakukan perubahan dengan menggunakan text-align, yang memiliki atribut right,
justify, and left, seperti yang diberikan pada kode sumber 4.23.

Nama File : cssLatih22.html
<hfm1>
<head>
<!--Pendef1n1s1an fomaf fag h1ML unfuk-->
<sfy1e>
body { fonf-fam11y: se1f
backgound-1mage: u1{bg-kof.g1f}}
p { fexf-a11gn: 1ghf }
h5{ fexf-a11gn: usf1fy }
h6{ fexf-a11gn: 1eff }
</sfy1e>
</head>
<body>
<!--Penggunaan fomaf fag h1ML bedasakan sfy1e-->
<h2>C55 fexf-a11gn</h2>
<p>ln1 ada1ah paagaph P menggunakan fexf-a11gn: 1ghf. ln1 ada1ah
paagaph P menggunakan fexf-a11gn: 1ghf. ln1 ada1ah paagaph P
menggunakan fexf-a11gn: 1ghf. ln1 ada1ah paagaph P menggunakan
fexf-a11gn: 1ghf.</p>
<h5>ln1 ada1ah heade h5 menggunakan fexf-a11gn: usf1fy. ln1 ada1ah
heade h5 menggunakan fexf-a11gn: usf1fy. ln1 ada1ah heade h5
menggunakan fexf-a11gn: usf1fy. ln1 ada1ah heade h5 menggunakan
fexf-a11gn: usf1fy. ln1 ada1ah heade h5 menggunakan fexf-a11gn:
usf1fy. ln1 ada1ah heade h5 menggunakan fexf-a11gn: usf1fy. ln1
ada1ah heade h5 menggunakan fexf-a11gn: usf1fy.</h5>
<h6>ln1 ada1ah heade h6 menggunakan fexf-a11gn: 1eff. ln1 ada1ah
heade h6 menggunakan fexf-a11gn: 1eff. ln1 ada1ah heade h6
menggunakan fexf-a11gn: 1eff. ln1 ada1ah heade h6 menggunakan fexf-
a11gn: 1eff. ln1 ada1ah heade h6 menggunakan fexf-a11gn: 1eff. ln1
ada1ah heade h6 menggunakan fexf-a11gn: 1eff.</h6>
</body>
</hfm1>
Kode Sumber 4.23. Contoh Sederhana CSS Text-Align

Modul Pemrograman Web
Halaman | 40

Untuk melakukan transformasi (capitalize, uppercase, dan lowercase) secara cepat
terhadap format penulisan text dapat digunakan text-transform, seperti yang diberikan
pada kode sumber 4.24.

Nama File : cssLatih23.html
<hfm1>
<head>
<!--Pendef1n1s1an fomaf fag h1ML unfuk-->
<sfy1e>
body { fonf-fam11y: se1f
backgound-1mage: u1{bg-kof.g1f}}
p { fexf-fansfom: cap1fa11ze }
h3{ fexf-fansfom: uppecase }
h4{ fexf-fansfom: 1oWecase }
</sfy1e>
</head>
<body>
<!--Penggunaan fomaf fag h1ML bedasakan sfy1e-->
<h2>C55 fexf-fansfom</h2>
<p>ln1 ada1ah paagaph P menggunakan fexf-fansfom :
cap1fa11ze.</p>
<h3>ln1 ada1ah heade h3 menggunakan fexf-fansfom : uppecase.</h3>
<h4>ln1 ada1ah heade h4 menggunakan fexf-fansfom : 1oWecase.</h4>
</body>
</hfm1>
Kode Sumber 4.24. Contoh Sederhana CSS Text-Transform

Untuk menuliskan text dan memberikan efek ganti baris tanpa harus memberikan tag
HTML <BR> dapat dilakukan dengan menggunakan white-space, yang memiliki atribut
nowrap (tanpa efek ganti baris), dan wrap (efek ganti baris), seperti yang diberikan pada
kode sumber 4.25.
Nama File : cssLatih24.html
<hfm1>
<head>
<!--Pendef1n1s1an fomaf fag h1ML unfuk-->
<sfy1e>
body { fonf-fam11y: se1f
backgound-1mage: u1{bg-kof.g1f}}
p { Wh1fe-space: noWap }
h1 { Wh1fe-space: Wap }
</sfy1e>
</head>
<body>
<!--Penggunaan fomaf fag h1ML bedasakan sfy1e-->
<h2>C55 Wh1fe-space aff1bufe</h2>
<p>ln1 ada1ah paagaph P menggunakan Wh1fe-space: noWap. ln1 ada1ah
paagaph P menggunakan Wh1fe-space: noWap. ln1 ada1ah paagaph P
menggunakan Wh1fe-space: noWap. ln1 ada1ah paagaph P menggunakan
Wh1fe-space: noWap.</p>
<h1>ln1 ada1ah heade h1 menggunakan Wh1fe-space: Wap. ln1 ada1ah
heade h1 menggunakan Wh1fe-space: Wap. ln1 ada1ah heade h1
menggunakan Wh1fe-space: Wap.</h1>
</body>
</hfm1>
Kode Sumber 4.25. Contoh Sederhana CSS White-Space Attribute

Modul Pemrograman Web
Halaman | 41
Untuk menspesifikan ukuran spasi antar kata dan karakter dapat digunakan word spacing
dan letter spacing dengan menggunakan nilai exact, seperti yang diberikan pada kode
sumber 4.26.

Nama File : cssLatih25.html
<hfm1>
<head>
<!--Pendef1n1s1an fomaf fag h1ML unfuk-->
<sfy1e>
body { fonf-fam11y: se1f
backgound-1mage: u1{bg-kof.g1f}}
p { Wod-spac1ng: 20px }
h1 { 1effe-spac1ng: 5px }
</sfy1e>
</head>
<body>
<!--Penggunaan fomaf fag h1ML bedasakan sfy1e-->
<h2>C55 Wh1fe-space aff1bufe</h2>
<p>ln1 ada1ah paagaph P menggunakan Wod-spac1ng {aak anfa
kafa}: 20px. </p>
<h1>ln1 ada1ah heade h1 menggunakan 1effe-spac1ng {aak anfa
kaakfe} : 5px.</h1>
</body>
</hfm1>
Kode Sumber 4.26. Contoh Sederhana CSS Word dan Letter Spacing


4.8. CSS Padding
Padding adalah jarak antara elemen-elemen border dan isinya. CSS padding dapat
digunakan untuk merubah default padding elemen-elemen HTML yang tampak
(paragraph, tabel, dan sebagainya), seperti yang diberikan pada kode sumber 4.27. yang
menggambarkan padding yang diberikan akan berlaku sama dalam satu halaman untuk
top, bottom, right, dan left.

Nama File : cssLatih26.html
<hfm1>
<head>
<!--Pendef1n1s1an fomaf fag h1ML unfuk-->
<sfy1e>
body { fonf-fam11y: se1f
backgound-1mage: u1{bg-kof.g1f}}
p { padd1ng: 15px bode: 1px so11d b1ack }
h3 { padd1ng: 0px bode: 1px so11d ed }
h4 { padd1ng: 2x bode: 1px so11d b1ack }
</sfy1e>
</head>
<body>
<!--Penggunaan fomaf fag h1ML bedasakan sfy1e-->
<h2>C55 padd1ng one va1ue</h2>
<p>ln1 ada1ah paagaph P menggunakan padd1ng : 15px bode : 1px
so11d b1ack. </p>
<h3>ln1 ada1ah heade h3 menggunakan padd1ng : 0px bode : 1px
so11d ed.</h3>
<h4>ln1 ada1ah heade h4 menggunakan padd1ng : 2x bode : 1px so11d
b1ack.</h4>
</body>
</hfm1>
Kode Sumber 4.27. Contoh Sederhana CSS Padding One Value

Modul Pemrograman Web
Halaman | 42

Setiap elemen HTML secara aktual memiliki empat padding yang berbeda : top, bottom,
right, dan left. Hal ini memungkinkan untuk mendefinisikan masing-masing padding
secara berbeda dengan menambahkan suffix pada atribut (top, bottom, right, dan left)
padding, seperti yang diberikan pada kode sumber 4.28.

Nama File : cssLatih27.html
<hfm1>
<head>
<!--Pendef1n1s1an fomaf fag h1ML unfuk-->
<sfy1e>
body { fonf-fam11y: se1f
backgound-1mage: u1{bg-kof.g1f}}
p { padd1ng-1eff: 5px bode: 1px so11d b1ack }
h3{ padd1ng-fop: 0px
padd1ng-1ghf: 2px
padd1ng-boffom: 13px
padd1ng-1eff: 21px
bode: 1px so11d ed }
</sfy1e>
</head>
<body>
<!--Penggunaan fomaf fag h1ML bedasakan sfy1e-->
<h2>C55 padd1ng {d1ecf1on}</h2>
<p>ln1 ada1ah paagaph P menggunakan padd1ng : 15px bode : 1px
so11d b1ack. Paagaph 1n1 hanya menggunakan safu dek1aas1 padd1ng
d1ecf1on secaa spes1f1k pada 1eff dan f1ga yang 1a1nnya f1dak
d1spes1f1kan</p>
<h3>ln1 ada1ah heade h3 yang mem111k1 spes1f1kas1 unfuk sef1ap
padd1ng dengan dek1aas1 padd1ng d1ecf1on send11-send11.</h3>
</body>
</hfm1>
Kode Sumber 4.28. Contoh Sederhana CSS Padding Direction

Nilai empat padding dapat dideklarasikan dengan menggunakan dua atau empat nilai.
Pada saat menggunakan dua nilai, berarti yang pertama mendefinisikan top dan bottom
dan yang kedua mendefinisikan left dan right. Sedangkan pada saat menggunakan
empat nilai, secara langsung berhubungan dengan top, right, bottom, dan left, seperti
yang diberikan pada kode sumber 4.29.

Nama File : cssLatih28.html
<hfm1>
<head>
<!--Pendef1n1s1an fomaf fag h1ML unfuk-->
<sfy1e>
body { fonf-fam11y: se1f
backgound-1mage: u1{bg-kof.g1f}}
p { padd1ng: 5px 15px
bode: 1px so11d b1ack }
h3{ padd1ng: 0px 5px 10px 3px
bode: 1px so11d ed}
</sfy1e>
</head>
<body>
<!--Penggunaan fomaf fag h1ML bedasakan sfy1e-->
<h2>C55 padd1ng fWo and fou va1ue</h2>
<p>ln1 ada1ah paagaph P mem111k1 padd1ng fop dan boffom ada1ah 5
p1xe1 padd1ng 1eff dan 1ghf ada1ah 15 p1xe1.</p>
<h3>ln1 ada1ah heade h3 mem111k1 padd1ng fop ada1ah 0 p1xe1 padd1ng
Modul Pemrograman Web
Halaman | 43
1ghf ada1ah 5 p1xe1 padd1ng boffom ada1ah 10 p1xe1 dan padd1ng
1eff ada1ah 3 p1xe1.</h3>
</body>
</hfm1>
Kode Sumber 4.29. Contoh Sederhana CSS dengan Two and Four Value


4.9. CSS Margin
CSS margin adalah identik dengan CSS padding termasuk atribut yang dimilikinya adalah
sama. Perbedaan yang terpenting pada definisi margin adalah jarak antara elemen-
elemen border HTML. Untuk contoh CSS margin sama seperti pada CSS padding dengan
cara melakukan perubahan semua atribut padding menjadi margin pada kode sumber
4.27, 4.28., dan 4.29., dan kemudian amati efek perubahan yang terjadi.

4.10. CSS Border
CSS border digunakan untuk membuat border yang tampak pada sekitar elemen HTML.
Banyak variasi untuk membuat type border seperti yang diberikan pada kode sumber
4.30., dengan nilai default border style adalah hidden.

Nama File : cssLatih29.html
<hfm1>
<head>
<!--Pendef1n1s1an fomaf fag h1ML unfuk-->
<sfy1e>
body { fonf-fam11y: se1f
backgound-1mage: u1{bg-kof.g1f}}
p.so11d {bode-sfy1e: so11d }
p.doub1e {bode-sfy1e: doub1e }
p.goove {bode-sfy1e: goove }
p.doffed {bode-sfy1e: doffed }
p.dashed {bode-sfy1e: dashed }
p.1nsef {bode-sfy1e: 1nsef }
p.oufsef {bode-sfy1e: oufsef }
p.1dge {bode-sfy1e: 1dge }
p.h1dden {bode-sfy1e: h1dden }
</sfy1e>
</head>
<body>
<!--Penggunaan fomaf fag h1ML bedasakan sfy1e-->
<h2>C55 bode sfy1e</h2>
<p c1ass="so11d">ln1 ada1ah paagaph P dengan bode-sfy1e :
so11d</p>
<p c1ass="doub1e">ln1 ada1ah paagaph P dengan bode-sfy1e :
doub1e</p>
<p c1ass="goove">ln1 ada1ah paagaph P dengan bode-sfy1e :
goove</p>
<p c1ass="doffed">ln1 ada1ah paagaph P dengan bode-sfy1e :
doffed</p>
<p c1ass="dashed">ln1 ada1ah paagaph P dengan bode-sfy1e :
dashed</p>
<p c1ass="1nsef">ln1 ada1ah paagaph P dengan bode-sfy1e :
1nsef</p>
<p c1ass="oufsef">ln1 ada1ah paagaph P dengan bode-sfy1e :
oufsef</p>
<p c1ass="1dge">ln1 ada1ah paagaph P dengan bode-sfy1e :
1dge</p>
<p c1ass="h1dden">ln1 ada1ah paagaph P dengan bode-sfy1e :
h1dden</p>
</body>
Modul Pemrograman Web
Halaman | 44

</hfm1>
Kode Sumber 4.30. Contoh Sederhana CSS Border Style

Untuk ketebalan border dapat digunakan border-width, dengan disertai border-style.
Border-width didefinisikan dengan nilai exact atau dengan key terms : thin, medium, dan
thick, seperti yang diberikan pada kode sumber 4.31.

Nama File : cssLatih30.html
<hfm1>
<head>
<!--Pendef1n1s1an fomaf fag h1ML unfuk-->
<sfy1e>
body { fonf-fam11y: se1f
backgound-1mage: u1{bg-kof.g1f}}
fab1e { bode-W1dfh: 7px
bode-sfy1e: oufsef }
fd { bode-W1dfh: med1um
bode-sfy1e: 1dge }
p { bode-W1dfh: fh1ck
bode-sfy1e: so11d }
</sfy1e>
</head>
<body>
<!--Penggunaan fomaf fag h1ML bedasakan sfy1e-->
<h2>C55 bode W1dfh</h2>
<fab1e>
<f>
<fd>1ab1e menggunakan oufsef bode</fd>
<fd>dan sef1ap ce11 menggunakan</fd>
<fd>1dge bode.</fd>
</f>
<f>
<fd>1ab1e menggunakan oufsef bode</fd>
<fd>dan sef1ap ce11 menggunakan</fd>
<fd>1dge bode.</fd>
</f>
</fab1e>
<p>ln1 ada1ah paagaph P dengan bode-W1dfh : fh1ck bode-sfy1e :
so11d</p>
</body>
</hfm1>
Kode Sumber 4.31. Contoh Sederhana CSS Border Width

Warna border dapat dilakukan perubahan dengan menggunakan border color, dengan
representasi dapat didefinisikan dengan RGB, hexadecimal, atau key terms, seperti yang
diberikan pada kode sumber 4.32.
Nama File : cssLatih31.html
<hfm1>
<head>
<!--Pendef1n1s1an fomaf fag h1ML unfuk-->
<sfy1e>
body { fonf-fam11y: se1f
backgound-1mage: u1{bg-kof.g1f}}
fab1e { bode-co1o: gb{ 100, 100, 255}
bode-sfy1e: dashed }
fd { bode-co1o: #II8D32
bode-sfy1e: 1dge }
p { bode-W1dfh : fh1ck
bode-co1o: b1ue
Modul Pemrograman Web
Halaman | 45
bode-sfy1e: so11d }
</sfy1e>
</head>
<body>
<!--Penggunaan fomaf fag h1ML bedasakan sfy1e-->
<h2>C55 bode co1o</h2>
<fab1e>
<f>
<fd>1ab1e menggunakan dashed bode</fd>
<fd>dan sef1ap ce11 menggunakan</fd>
<fd>1dge bode.</fd>
</f>
<f>
<fd>1ab1e menggunakan dashed bode</fd>
<fd>dan sef1ap ce11 menggunakan</fd>
<fd>1dge bode.</fd>
</f>
</fab1e>
<p>ln1 ada1ah paagaph P dengan bode-W1dfh : fh1ck bode-co1o:
b1ue bode-sfy1e : so11d</p>
</body>
</hfm1>
Kode Sumber 4.32. Contoh Sederhana CSS Border Color

Setiap sisi pada border dapat diberlakukan secara berbeda-beda, dengan menspesifikan
border secara direction yang diikuti dengan atribut border : top, right, bottom, dan left,
seperti yang diberikan pada kode sumber 4.33.

Nama File : cssLatih32.html
<hfm1>
<head>
<!--Pendef1n1s1an fomaf fag h1ML unfuk-->
<sfy1e>
body { fonf-fam11y: se1f
backgound-1mage: u1{bg-kof.g1f}}
p { bode-boffom-sfy1e: dashed
bode-boffom-co1o: ye11oW
bode-boffom-W1dfh: 5px }
h4 { bode-fop-sfy1e: doub1e
bode-fop-co1o: pup1e
bode-fop-W1dfh: fh1ck }
h5 { bode-1eff-sfy1e: goove
bode-1eff-co1o: geen
bode-1eff-W1dfh: 15px
bode-boffom-sfy1e: 1dge
bode-boffom-co1o: ye11oW
bode-boffom-W1dfh: 25px }
</sfy1e>
</head>
<body>
<!--Penggunaan fomaf fag h1ML bedasakan sfy1e-->
<h2>C55 bode {d1ecf1on}</h2>
<p>ln1 ada1ah paagaph P dengan bode-boffom-sfy1e : dashed
bode-boffom-co1o : ye11oW bode-boffom-W1dfh : 5px</p>
<h4>ln1 ada1ah heade h4 dengan bode-fop-sfy1e : doub1e bode-
fop-co1o : pup1e bode-fop-W1dfh : fh1ck</h4>
<h5>ln1 ada1ah heade h5 dengan bode-1eff-sfy1e : goove bode-
1eff-co1o: geen bode-1eff-W1dfh : 15px bode-boffom-
sfy1e : 1dge bode-boffom-co1o : ye11oW bode-boffom-W1dfh
: 25px</h5>
</body>
Modul Pemrograman Web
Halaman | 46

</hfm1>
Kode Sumber 4.33. Contoh Sederhana CSS Border Direction

Untuk mempersingkat cara penulisan, dalam representasi border dapat dituliskan dalam
satu baris, seperti yang diberikan pada kode sumber 4.34.

Nama File : cssLatih33.html
<hfm1>
<head>
<!--Pendef1n1s1an fomaf fag h1ML unfuk-->
<sfy1e>
body { fonf-fam11y: se1f
backgound-1mage: u1{bg-kof.g1f}}
p { bode: 20px oufsef b1ue }
h4{ bode: 5px so11d }
h5{ bode: doffed }
</sfy1e>
</head>
<body>
<!--Penggunaan fomaf fag h1ML bedasakan sfy1e-->
<h2>C55 bode a11 1n one</h2>
<p>ln1 ada1ah paagaph P dengan bode : 20px oufsef b1ue</p>
<h4>ln1 ada1ah heade h4 dengan bode : 5px so11d</h4>
<h5>ln1 ada1ah heade h5 bode : doffed</h5>
</body>
</hfm1>
Kode Sumber 4.34. Contoh Sederhana CSS Border All in One

4.11. CSS List
List terdiri dari dua, yaitu : unordered list dan ordered list. CSS mengijinkan image
digunakan sebagai bullets pada unordered list. Atribut list style terdiri dari, seperti yang
diberikan pada kode sumber 4.35. :
1. Unordered list style : square, circle, disc(default), dan none.
2. Ordered list style : upper-alpha, lower-alpha, upper-roman, lower-roman,
decimal(default), dan none.

Nama File : cssLatih34.html
<hfm1>
<head>
<!--Pendef1n1s1an fomaf fag h1ML unfuk-->
<sfy1e>
body { fonf-fam11y: se1f
backgound-1mage: u1{bg-kof.g1f}}
o1 { 11sf-sfy1e-fype: uppe-oman }
u1 { 11sf-sfy1e-fype: c1c1e }
</sfy1e>
</head>
<body>
<!--Penggunaan fomaf fag h1ML bedasakan sfy1e-->
<h2>C55 11sf sfy1e fype</h2>
<o1>
<11>ln1 ada1ah odeed 11sf </11>
<11>dengan uppe koman sfy1e</11>
<11>menggunakan C55</11>
</o1>
<u1>
<11>ln1 ada1ah unodeed 11sf </11>
<11>dengan bu11efs c1c1e sfy1e</11>
Modul Pemrograman Web
Halaman | 47
<11>menggunakan C55</11>
</u1>
</body>
</hfm1>
Kode Sumber 4.35. Contoh Sederhana CSS List Style Type

Pada Unordered list untuk bullets style dapat menggunakan image, sebaiknya ukuran
image-nya jangan terlalu besar disesuaikan dengan ukuran font, seperti yang diberikan
pada kode sumber 4.36.

Nama File : cssLatih35.html
<hfm1>
<head>
<!--Pendef1n1s1an fomaf fag h1ML unfuk-->
<sfy1e>
body { fonf-fam11y: se1f
backgound-1mage: u1{bg-kof.g1f}}
o1 { 11sf-sfy1e-fype: uppe-a1pha }
u1 { 11sf-sfy1e-1mage: u1{"181nfegaf1on.g1f"} }
</sfy1e>
</head>
<body>
<!--Penggunaan fomaf fag h1ML bedasakan sfy1e-->
<h2>C55 11sf W1fh 1mage {unodeed 11sf}</h2>
<o1>
<11>ln1 ada1ah odeed 11sf </11>
<11>dengan uppe-a1pha sfy1e</11>
<11>menggunakan C55</11>
</o1>
<u1>
<11>ln1 ada1ah unodeed 11sf </11>
<11>dengan bu11efs menggunakan 1mage "181nfegaf1on.g1f"</11>
<11>dan spas1nya fe11haf f1dak bagus</11>
</u1>
</body>
</hfm1>
Kode Sumber 4.36. Contoh Sederhana CSS List With Image

CSS memungkinkan untuk mengatur indent terhadap list item, yang representasinya
hanya menggunakan key terms : outside dan inside, dengan nilai default adalah outside,
seperti yang diberikan pada kode sumber 4.37.

Nama File : cssLatih36.html
<hfm1>
<head>
<!--Pendef1n1s1an fomaf fag h1ML unfuk-->
<sfy1e>
body { fonf-fam11y: se1f
backgound-1mage: u1{bg-kof.g1f}}
u1 { 11sf-sfy1e-pos1f1on: 1ns1de }
o1 { 11sf-sfy1e-pos1f1on: oufs1de }
</sfy1e>
</head>
<body>
<!--Penggunaan fomaf fag h1ML bedasakan sfy1e-->
<h2>C55 11sf pos1f1on1ng</h2>
<o1>
<11>ln1 ada1ah odeed 11sf pos1f1on oufs1de</11>
<11>dengan dec1ma1{defau1f} sfy1e</11>
<11>menggunakan C55 11sf pos1f1on</11>
Modul Pemrograman Web
Halaman | 48

</o1>
<u1>
<11>ln1 ada1ah unodeed 11sf pos1f1on 1ns1de</11>
<11>dengan d1sc{defau1f} sfy1e</11>
<11>menggunakan C55 11sf pos1f1on</11>
</u1>
</body>
</hfm1>
Kode Sumber 4.37. Contoh Sederhana CSS List Position

CSS memungkinkan untuk mengkombinasikan semua teknik CSS yang diberikan pada
bagian sebelumnya dalam satu kode baris CSS yang biasanya akan sangat berguna pada
saat menggunakan list image dengan image yang tidak dapat dilakukan load, seperti
yang diberikan pada kode sumber 4.38.

Nama File : cssLatih37.html
<hfm1>
<head>
<!--Pendef1n1s1an fomaf fag h1ML unfuk-->
<sfy1e>
body { fonf-fam11y: se1f
backgound-1mage: u1{bg-kof.g1f}}
u1 { 11sf-sfy1e: uppe-oman 1ns1de u1{"18qu1ck.g1f"}}
</sfy1e>
</head>
<body>
<!--Penggunaan fomaf fag h1ML bedasakan sfy1e-->
<h2>C55 11sf a11 1n one</h2>
<u1>
<11>ln1 ada1ah unodeed 11sf a11 1n one</11>
<11>dengan bu11efs menggunakan 1mage "18qu1ck.g1f"</11>
<11>dan spas1nya fe11haf f1dak bagus</11>
</u1>
</body>
</hfm1>
Kode Sumber 4.38. Contoh Sederhana CSS All in One

4.12. CSS Links (Pseudo-classes)
Link memiliki empat state yang berbeda, yang masing-masing dapat state dapat
dilakukan customize sendiri-sendiri. State link meliputi sebagai berikut :
1. link
Efek link sebelum digunakan
2. visited
Efek link sesudah digunakan
3. hover
Efek mouse pointer pada link
4. active
Efek link pada saat dilakukan proses (klick)

Nama state didefinisikan secara pseudo-class berdasarkan state yang digunakan dengan
urutan link-visited-hover-active, seperti yang diberikan pada kode sumber 4.39.

Nama File : cssLatih38.html
<hfm1>
<head>
<!--Pendef1n1s1an fomaf fag h1ML unfuk-->
Modul Pemrograman Web
Halaman | 49
<sfy1e>
body { fonf-fam11y: se1f
backgound-1mage: u1{bg-kof.g1f}}
a:11nk { co1o: ed }
a:v1s1fed { co1o: ed }
a:hove { co1o: b1ue }
a:acf1ve { co1o: ye11oW }
</sfy1e>
</head>
<body>
<!--Penggunaan fomaf fag h1ML bedasakan sfy1e-->
<h2>C55 11nks</h2>
<a hef="">ln1 ada1ah C55 L1nk! Menggunakan sfafe 11nk co1o: ed
v1s1fed co1o: ed hove co1o: b1ue acf1ve co1o: ye11oW</a>
</body>
</hfm1>
Kode Sumber 4.39. Contoh Sederhana CSS Link

Underline pada link dapat dihilangkan dengan menggunakan text-decoration: none,
seperti yang diberikan pada kode sumber 4.40.

Nama File : cssLatih39.html
<hfm1>
<head>
<!--Pendef1n1s1an fomaf fag h1ML unfuk-->
<sfy1e>
body { fonf-fam11y: se1f
backgound-1mage: u1{bg-kof.g1f}}
a:11nk { co1o: ed fexf-decoaf1on: none }
a:v1s1fed { co1o: ed fexf-decoaf1on: none }
a:hove { co1o: b1ue fexf-decoaf1on: unde11ne}
a:acf1ve { co1o: ye11oW }
</sfy1e>
</head>
<body>
<!--Penggunaan fomaf fag h1ML bedasakan sfy1e-->
<h2>C55 11nks: kemov1ng fhe Defau1f unde11ne</h2>
<a hef="">ln1 ada1ah C55 L1nk! Menggunakan sfafe 11nk { co1o: ed
fexf-decoaf1on: none } v1s1fed { co1o: ed fexf-decoaf1on: none
} hove { co1o: b1ue fexf-decoaf1on: unde11ne} acf1ve { co1o:
ye11oW }</a>
</body>
</hfm1>
Kode Sumber 4.40. Contoh Sederhana CSS Link Tanpa Underline

Kode sumber 4.41., 4.42., dan 4.3. adalah merupakan contoh untuk melakukan
manipulasi state suatu hyperlinks (links couple) dengan menggunakan beberapa form
CSS.

Nama File : cssLatih40.html
<hfm1>
<head>
<!--Pendef1n1s1an fomaf fag h1ML unfuk-->
<sfy1e>
body { fonf-fam11y: se1f
backgound-1mage: u1{bg-kof.g1f}}

a:11nk { co1o: Wh1fe
backgound-co1o: b1ack
fexf-decoaf1on: none
Modul Pemrograman Web
Halaman | 50

padd1ng: 3px 3px 3px 3px
bode: 2px so11d Wh1fe }

a:v1s1fed { co1o: Wh1fe
backgound-co1o: b1ack
fexf-decoaf1on: none
padd1ng: 3px 3px 3px 3px
bode: 2px so11d Wh1fe }

a:hove { co1o: b1ack
backgound-co1o: Wh1fe
fexf-decoaf1on: none
padd1ng: 3px 3px 3px 3px
bode: 2px so11d b1ack }

a:acf1ve { co1o: ye11oW }
</sfy1e>
</head>
<body>
<!--Penggunaan fomaf fag h1ML bedasakan sfy1e-->
<h2>C55 11nks: Menggunakan Coup1e</h2>
<a hef="">va1anf Iom C55 L1nk-1</a><b><b>
<a hef="">va1anf Iom C55 L1nk-2</a>
</body>
</hfm1>
Kode Sumber 4.41. Contoh Sederhana Variant-1 CSS Link

Nama File : cssLatih41.html
<hfm1>
<head>
<!--Pendef1n1s1an fomaf fag h1ML unfuk-->
<sfy1e>
body { fonf-fam11y: se1f
backgound-1mage: u1{bg-kof.g1f}}

a:11nk { co1o: b1ue
backgound-co1o: ed
fonf-s1ze: 26px
bode: 10px oufsef b1ue
fonf-fam11y: sans-se1f
fexf-fansfom: 1oWecase
fexf-decoaf1on: none}

a:v1s1fed {
co1o: b1ue
backgound-co1o: ed
fonf-s1ze: 26px
bode: 10px oufsef b1ue
fonf-fam11y: sans-se1f
fexf-fansfom: 1oWecase
fexf-decoaf1on: none}
a:hove{ co1o: b1ue
backgound-co1o: ed
fonf-s1ze: 27px
bode: 10px 1nsef b1ue
fonf-fam11y: se1f
fexf-fansfom: uppecase
fexf-decoaf1on: 11ne-fhough
1effe-spac1ng: 3px
Wod-spac1ng: 6px
fonf-We1ghf: noma1 }
Modul Pemrograman Web
Halaman | 51

a:acf1ve { co1o: ye11oW }
</sfy1e>
</head>
<body>
<!--Penggunaan fomaf fag h1ML bedasakan sfy1e-->
<h2>C55 11nks: Menggunakan Coup1e</h2>
<a hef="">va1anf Iom C55 L1nk-1</a><b><b>
<a hef="">va1anf Iom C55 L1nk-2</a>
</body>
</hfm1>
Kode Sumber 4.42. Contoh Sederhana Variant-2 CSS Link

Nama File : cssLatih42.html
<hfm1>
<head>
<!--Pendef1n1s1an fomaf fag h1ML unfuk-->
<sfy1e>
body { fonf-fam11y: se1f
backgound-1mage: u1{bg-kof.g1f}}

a:11nk{ fexf-decoaf1on: none
co1o: gay }

a:v1s1fed{ fexf-decoaf1on: none
co1o: gay }

a:hove{ fexf-decoaf1on: none
co1o: geen
fonf-We1ghf: bo1de
1effe-spac1ng: 2px }

a:acf1ve { co1o: ye11oW }
</sfy1e>
</head>
<body>
<!--Penggunaan fomaf fag h1ML bedasakan sfy1e-->
<h2>C55 11nks: Menggunakan Coup1e</h2>
<a hef="">va1anf Iom C55 L1nk-1</a><b>
<a hef="">va1anf Iom C55 L1nk-2</a>
</body>
</hfm1>
Kode Sumber 4.43. Contoh Sederhana Variant-3 CSS Link

4.13. CSS Mouse Cursor
Pada saat bekerja dengan system operasi Windows, Linux, atau Macintosh akan
dirasakan perbedaan pada cursor icon mouse. Dalam kondisi normal cursor icon mouse
berbentuk arrow, "| ketika dilakukan pemilihan text, dan beberapa logo animasi pada
saat komputer bekerja. CSS dapat digunakan untuk merubah cursor icon mouse yang
sesuai dengan keinginan. Beberapa properties cursor icon adalah, seperti yang diberikan
pada kode sumber 4.44. :
Default : menampilkan cursor icon mouse secara normal
Wait : cursor icon mouse pada saat komputer bekerja
Crosshair : icon tanda plus
Text : icon "| ketika dilakukan pemilihan text
Pointer : icon tangan pada saat hover pada halaman link
Help : question mark

Nama File : cssLatih43.html
Modul Pemrograman Web
Halaman | 52

<hfm1>
<head>
<!--Pendef1n1s1an fomaf fag h1ML unfuk-->
<sfy1e>
body { fonf-fam11y: se1f
backgound-1mage: u1{bg-kof.g1f}}
p { cuso: defau1f }
h1 { cuso: Wa1f }
h3 { cuso: cossha1 }
h4 { cuso: fexf }
h5 { cuso: po1nfe }
h6 { cuso: he1p }
</sfy1e>
</head>
<body>
<!--Penggunaan fomaf fag h1ML bedasakan sfy1e-->
<h2>C55 Cuso lcon Mouse</h2>
<p>Cuso lcon Mouse : defau1f</p>
<h1>Cuso lcon Mouse : Wa1f</h1>
<h3>Cuso lcon Mouse : cossha1</h3>
<h4>Cuso lcon Mouse : fexf</h4>
<h5>Cuso lcon Mouse : po1nfe</h5>
<h6>Cuso lcon Mouse : he1p</h6>
</body>
</hfm1>
Kode Sumber 4.44. Contoh Sederhana CSS Cursor Icon Mouse



Modul Pemrograman Web
Halaman | 53
BAB 5
Java Script (JS)

JS adalah bermafaat untuk menambahkan interaksi antara halaman web dengan
pengunjung halaman web. JS memberikan kemampuan fitur-fitur tambahan halaman
web yang lebih baik dibandingkan dengan fasilitas fitur-fitur yang terdapat pada HTML
dan CSS yang telah diberikan pada bagian sebelumnya. JS merupakan bahasa client-side
scripting, dimana scripts-nya akan dijalankan pada sisi client (oleh browser).

5.1. Sintak JS
Sintak penulisan kode JS diawali dengan tag <sc1pf fype=fexf/avasc1pf> (untuk
memberitahu kepada browser bahwa ini merupakan kode-kode yang dituliskan dalam JS)
dan diakhiri dengan tag </sc1pf>, dan kemudian semua perintah-perintah kode JS
dituliskan diantara tag script tersebut dan untuk setiap akhir perintah kode JS tidak
membutuhkan tanda semicolons (membutuhkan tanda semicolons jika dua perintah atau
lebih dituliskan dalam satu baris), seperti yang diberikan pada kode sumber 5.1.

Nama File : jsLatih01.html
<hfm1>
<body>
<sc1pf fype="fexf/avasc1pf" <sc1pf fype="fexf/avasc1pf" <sc1pf fype="fexf/avasc1pf" <sc1pf fype="fexf/avasc1pf"> >> >
// 1n1 ada1ah "//" sebaga1 komenfa pada kode J5
// // // //ls1 Pe1nfah ls1 Pe1nfah ls1 Pe1nfah ls1 Pe1nfah- -- -pe1nfah kode Java 5c1pf pe1nfah kode Java 5c1pf pe1nfah kode Java 5c1pf pe1nfah kode Java 5c1pf
//menamp11kan sf1ng pada boWse
documenf.W1fe{"he11o Wo1d, Java 5c1pf!"}
</sc1pf> </sc1pf> </sc1pf> </sc1pf>
</body>
</hfm1>
Kode Sumber 5.1. Representasi Penulisan Kode JS pada Tag BODY

5.2. Head Body
Terdapat tiga area halaman HTML yang dapat digunakan untuk menempatkan kode-kode
JS, yaitu : antara tag HEAD, antara tag BODY, dan menggunakan file eksternal
(merupakan bagian yang akan dibahas pada buku ini). Jika script ingin dijalankan pada
beberapa event maka sebaiknya kode JS diletakkan pada tag HEAD seperti yang
diberikan pada kode sumber 5.2. (fungsi alert), tetapi jika script dijalankan pada saat
halaman web di load maka sebaiknya kode JS diletakkan pada tag BODY seperti yang
diberikan pada kode sumber 5.1.

Nama File : jsLatih02.html
<hfm1>
<head>
<sc1pf fype="fexf/avasc1pf">
//fungs1 popup yang d1fu11kan da1am kode J5
funcf1on popup{} {
a1ef{"he11o Wo1d, Java 5c1pf"}
}
</sc1pf>
</head>
<body>
<1npuf fype="buffon" onc11ck="popup{}" va1ue="popup">
</body>
</hfm1>
Kode Sumber 5.2. Representasi Penulisan Kode JS pada Tag HEAD

5.3. JS File Eksternal
Bekerja dengan file eksternal dibutuhkan untuk melakukan proses import terhadap file
eksternal tersebut. Hal yang harus diperhatikan pada saat import file eksternal adalah :
Modul Pemrograman Web
Halaman | 54

file yang di-import adalah merupakan file JS yang valid dan hanya file JS, file harus
berekstensi file .js, dan harus diketahui lokasi dari file eksternal tersebut.
Menggunakan kode sumber 5.2. akan dilakukan perubahan dengan meletakan kode-kode
JS sebagai file eksternal dan disimpan dengan nama file jsLatih03.js yang berada pada
folder jscript dan kemudian di import pada file jsLatih04.html, seperti yang diberikan
pada kode sumber 5.3. dan 5.4. File eksternal digunakan pada saat script yang sama
digunakan pada beberapa halaman web, tetapi tidak dibutuhkan untuk menuliskan
kembali script tersebut.

Nama File : jsLatih03.js
//fungs1 popup sebaga1 f11e eksfena1
funcf1on popup{} {
a1ef{"he11o Wo1d, Java 5c1pf"}
}
Kode Sumber 5.3. File Eksternal JS

Nama File : jsLatih04.html
<hfm1>
<head>
<!--memangg11 f11e eksfena1 sLaf1h03.s pada fo1de sc1pf-->
<sc1pf sc="sc1pf/sLaf1h03.s">
</sc1pf>
</head>
<body>
<1npuf fype="buffon" onc11ck="popup{}" va1ue="C11ck Me!">
</body>
</hfm1>
Kode Sumber 5.4. JS Menggunakan File Eksternal

5.4. JS Operator
Operator dalam JS sama dengan definisi operator pada kebanyakan bahasa-bahasa
pemrograman (pascal, C ansi, Java, dan lain sebagainya). Operator aritmatika yang
digunakan pada JS diberikan pada tabel 5.1., sedangkan contoh penggunaan operator
diberikan pada kode sumber 5.5.
Tabel 5.1. Operator Aritmatika
Operator Keterangan Contoh
+ Penjumlahan 2 + 5 = 7
- Pengurangan 7 - 3 = 4
* Perkalian 3 * 4 = 12
/ Pembagian 10 / 2 = 5
% Sisa Hasil Bagi (modulus) 5 % 2 = 1

Nama File : jsLatih05.html
<hfm1>
<head>
</head>
<body>
<sc1pf fype="fexf/avasc1pf">
//dek1aas1 va1abe1 seka11gus 1n1s1a11sas1
va fWo = 2
va fen = 10
va 11nebeak = "<b/>"
//penum1ahan
documenf.W1fe{"fWo + fen = "}
esu1f = fWo + fen
documenf.W1fe{esu1f}
documenf.W1fe{11nebeak}
//peka11an
documenf.W1fe{"fen " fen = "}
esu1f = fen " fen
Modul Pemrograman Web
Halaman | 55
documenf.W1fe{esu1f}
documenf.W1fe{11nebeak}
//pembag1an
documenf.W1fe{"fen / fWo = "}
esu1f = fen / fWo
documenf.W1fe{esu1f}
documenf.W1fe{11nebeak}
//s1sa has11 bag1
documenf.W1fe{"fen x fWo = "}
esu1f = fen x fWo
documenf.W1fe{esu1f}
</sc1pf>
</body>
</hfm1>
Kode Sumber 5.5. Operator Aritmatika

Operator perbandingan digunakan untuk melakukan pengecekan hubungan antara
variabel-variabel dan/atau dengan suatu nilai. Untuk operator perbandingan diberikan
pada tabel 5.2.

Tabel 5.2. Operator Perbandingan
Opeafo Opeafo Opeafo Opeafo kefeangan kefeangan kefeangan kefeangan Confoh Confoh Confoh Confoh has11 has11 has11 has11
== 5ama dengan $X == $Y Ia1se
!= 11dak sama dengan $X != $Y 1ue
< kuang da1 $X < $Y 1ue
> Leb1h besa da1 $X > $Y Ia1se
<= kuang da1 afau sama dengan $X <= $Y 1ue
>= Leb1h besa da1 afau sama
dengan
$X >= $Y Ia1se


5.5. JS Variabel
Variabel dalam JS adalah sama dengan definisi variabel pada kebanyakan bahasa-bahasa
pemrograman (C, Java, dan lain sebagainya), dan variabel pada JS bersifat case
sensitive. Variabel digunakan untuk untuk menyimpan informasi yang dapat digunakan
pada bagian berikutnya. Pendefinisian variabel dalam JS tidak harus diawali dengan
menggunakan kata "var, tetapi untuk alasan pemrograman yang baik disarankan untuk
menggunakan kata "var, seperti yang diberikan pada kode sumber 5.6.

Nama File : jsLatih06.html
<hfm1>
<head>
</head>
<body>
<sc1pf fype="fexf/avasc1pf">
//dek1aas1 menggunakan va dan seka11gus 1n1s1a11sas1
va 11nebeak = "<b />"
va myva = "he11o Wo1d!"
//dek1aas1 fanpa menggunakan va
fanpava = "va1ab1e Dec1aaf1on W1fhouf va"
documenf.W1fe{myva}
documenf.W1fe{11nebeak}
documenf.W1fe{fanpava}
documenf.W1fe{11nebeak}
//ass1gmenf
myva = "l am 1ean1ng avasc1pf!"
documenf.W1fe{myva}
documenf.W1fe{11nebeak}
//ass1gmenf
myva = "5c1pf 1s I1n1sh1ng up..."
documenf.W1fe{myva}
</sc1pf>
</body>
</hfm1>
Modul Pemrograman Web
Halaman | 56

Kode Sumber 5.6. Variabel

5.6. JS Function
Function digunakan untuk menspesifikan suatu kode-kode JS yang banyak/sering kali
dimanfaatkan pada suatu halaman web, sehingga dalam penulisan kode-kode JS tersebut
cukup sekali tidak perlu secara berulang-ulang. Untuk penggunaan function tersebut,
cukup memanggil nama dari function (dapat dilakukan secara berulang-ulang), dan
memberikan efek yang sama terhadap pemanggilan yang berulang-ulang tersebut.
Function tidak dieksekusi pada saat halaman web di-load, sehingga sebaiknya function
tersebut diletakkan pada tag HEAD, seperti yang diberikan pada kode sumber 5.2, 5.3.,
dan 5.4. Bentuk penulisan function secara umum :

funcf1on funcf1onname{} {
//body funcf1on
}


5.7. Events
Events dalam JS adalah sesuatu yang terjadi dengan atau pada suatu halaman web.
Beberapa contoh events adalah sebagai berikut :
Mouse click
Pada saat melakukan load halaman web
Pada saat mouse dipindahkan ke suatu objek
Memilih input box pada form HTML
Keystroke (tombol)

Untuk meng-capture dan membuat suatu kejadian pada saat events terjadi dibutuhkan
untuk menspesifikan events tersebut, kemudian elemen HTML menunggu events
tersebut, dan fungsinya akan dijalankan pada saat events-nya terjadi, seperti yang
diberikan pada kode sumber 5.7.

Nama File : jsLatih07.html
<hfm1>
<head>
<sc1pf fype="fexf/avasc1pf">
//mendef1n1s1kan fungs1
funcf1on popup{} {
a1ef{"he11o Wo1d, Java 5c1pf"}
}
</sc1pf>
</head>
<body>
<h2>Lvenfs yang d1gunakan: onC11ck,onMouseMove,onMouseOuf</h2>
<!--pendef1n1s1an evenfs: onC11ck,onmouseove,onMouseouf-->
<1npuf fype="buffon" va1ue="C11ck Me!" onc11ck="popup{}"><b><b>
<a hef="#" onMouseMove="W1ndoW.sfafus= `Menggunakan onMouseMove yang
d11s1kan pada W1ndoW.sfafus`" efun fue
onMouseOuf="W1ndoW.sfafus=``">Geakan Cuso d1s1n1!</a>
</body>
</hfm1>
Kode Sumber 5.7. Events

5.8. JS Alert
JS alert adalah suatu dialog box yang tampil dan fokusnya keluar dari current window,
dan melakukan pemaksaan terhadap web browser untuk membaca message. Untuk
contoh alert diberikan pada kode sumber 5.2., 5.3., 5.4., dan 5.7. Kondisi ideal
menggunakan JS alert adalah :
Modul Pemrograman Web
Halaman | 57
Jika secara mutlak message harus dibaca terlebih dahulu sebelum melakukan
ekplorasi terhadap halaman web
Jika ingin memberikan suatu peringatan tertentu terhadap pengunjung halaman
web
Pada saat terjadinya error dan error tersebut diinformasikan kepada pengunjung
halaman web
Pada saat menanyakan konfirmasi pengunjung halaman web terhadap suatu
action tertentu

5.9. JS Confirm
JS confirm pada prinsipnya sama dengan JS alert. Pada confirm box terdapat dua pilihan,
yaitu OK (jika pengunjung web setuju dengan message yang tampilkan pada window
(bernilai 1 jika OK)) dan Cancel (jika pengunjung web tidak setuju dengan message
yang tampilkan pada window (bernilai 0 jika Cancel)), seperti yang diberikan pada kode
sumber 5.8.

Nama File : jsLatih08.html
<hfm1>
<head>
<sc1pf fype="fexf/avasc1pf">
//pendef1n1s1an fungs1
funcf1on conf1maf1on{} {
//dek1aas1 dan seka11gus 1n1s1a11sas1
//va1abe1 ansWe ben11a1 1 1ka Ok afau 0 1ka CANCLL
va ansWe = conf1m{"Apakah kamu 1ng1n ke1ua da1
a1spW.f35.com?"}
1f {ansWe}{
a1ef{"1e1ma kas1h!"}
W1ndoW.c1ose{}//menufup boWse
}
e1se{//!ansWe
a1ef{"1e1ma kas1h, unfuk f1dak ke1ua da1
a1spW.f35.com!"}
}
}
</sc1pf>
</head>
<body>
<fom>
<1npuf fype="buffon" onc11ck="conf1maf1on{}" va1ue="konf1mas1 unfuk
menufup a1spW.f35.com">
</fom>
</body>
</hfm1>
Kode Sumber 5.8. Confirm

5.10. JS Prompt
Point utama dari prompt adalah digunakan untuk mengumpulkan informasi yang
dimasukan oleh pengunjung halaman web dan kemudian untuk dilakukan proses lebih
lanjut, seperti yang diberikan pada kode sumber 5.9.

Nama File : jsLatih09.html
<hfm1>
<head>
<sc1pf fype="fexf/avasc1pf">
//pendef1n1s1an fungs1
funcf1on pompfe{} {
//dek1aas1 seka11gus 1n1s1a11sas1
va ep1y = pompf{"Masukan Nama Anda?", "Defau1f Nama {kaena
nama anda be1um d11s1kan}"}
a1ef {ep1y}
}
Modul Pemrograman Web
Halaman | 58

</sc1pf>
</head>
<body>
<1npuf fype="buffon" onc11ck="pompfe{}" va1ue="51apa Nama Anda!">
</body>
</hfm1>
Kode Sumber 5.9. Prompt


5.10. JS Print
Fungsi JS print menjalankan operasi yang sama dengan icon gambar printer pada web
browser. Fungsi JS print akan mengirimkan isi halaman web ke device printer, seperti
yang diberikan pada kode sumber 5.10.

Nama File : jsLatih10.html
<hfm1>
<head>
</head>
<body>
<sc1pf fype="fexf/avasc1pf">
//dek1aas1 menggunakan va dan seka11gus 1n1s1a11sas1
va 11nebeak = "<b />"
va myva = "he11o Wo1d!"
//dek1aas1 fanpa menggunakan va
fanpava = "va1ab1e Dec1aaf1on W1fhouf va"
documenf.W1fe{myva}
documenf.W1fe{11nebeak}
documenf.W1fe{fanpava}
documenf.W1fe{11nebeak}
//ass1gmenf
myva = "l am 1ean1ng avasc1pf!"
documenf.W1fe{myva}
documenf.W1fe{11nebeak}
//ass1gmenf
myva = "5c1pf 1s I1n1sh1ng up..."
documenf.W1fe{myva}
</sc1pf>
<fom>
<!--fungs1 p1nf d1fempafkan pada evenf onC11ck-->
<1npuf fype="buffon" va1ue="P1nf ha1aman 1n1"
onC11ck="W1ndoW.p1nf{}" />
</fom>
</body>
</hfm1>
Kode Sumber 5.10. Print

5.11. JS Redirecting
Redirect digunakan untuk berpindah ke lokasi halaman web lain, dengan melakukan
setting pada alamat URL halaman web tujuan. Properties JS yang digunakan untuk
melakukan redirect adalah window.location=alamatUrlTujuan, seperti yang diberikan
pada kode sumber 5.11. (semua pengunjung web dilakukan redirect pada halaman
jsLatih11.html). Redirect dapat dikombinasikan dengan pemberian waktu delay pada saat
dilakukan perpindahan ke lokasi baru, seperti yang diberikan pada kode sumber 5.12.
Untuk berpindah ke alamat domain (URL) baru sebaiknya menggunakan redirect, tetapi
jika hanya merupakan link biasa sebaiknya jangan digunakan redirect tetapi
menggunakan hyperlink.

Nama File : jsLatih11.html
<hfm1>
<head>
<sc1pf fype="fexf/avasc1pf">
a1ef{"Membuka f11e sLaf1h11.hfm1 kaena efek
Modul Pemrograman Web
Halaman | 59
W1ndoW.1ocaf1on=sLaf1h10.hfm1,Maka yang febuka ada1ah f11e
sLaf1h10.hfm1"}
//me1akukan ed1ecf ha1aman sLaf1h10.hfm1
W1ndoW.1ocaf1on = "sLaf1h10.hfm1"
</sc1pf>
</head>
<body>
</body>
</hfm1>
Kode Sumber 5.11. Redirect

Nama File : jsLatih12.html
<hfm1>
<head>
<sc1pf fype="fexf/avasc1pf">
//pendef1n1s1an fungs1
funcf1on de1aye{}{
//me1akukan ed1ecf ha1aman sLaf1h10.hfm1
documenf.1ocaf1on = "sLaf1h10.hfm1"
}
</sc1pf>
</head>
<!--seff1ng 1amanya Wakfu de1ay 5000 m111second/5 second-->
<!--sef11meouf ada1ah fungs1 unfuk mengafu Wakfu de1ay-->
<body onLoad="sef11meouf{`de1aye{}`, 5000}">
<h2 >Mempes1apkan unfuk kLDlkLC1 ha1aman sLaf1h10.hfm1!</h2>
<p>ha1aman 1n1 menggunakan Wakfu de1ay sebesa 5000 pada saaf
d11akukan kLDlkLC1 ha1aman sLaf1h10.hfm1!</p>
</body>
</hfm1>
Kode Sumber 5.12. Redirect dengan Waktu Delay

5.12. JS Popup
Popup digunakan pada saat menampilkan informasi tambahan yang dianggap penting,
atau pada saat menampilkan membuka window baru tanpan menggunakan tag HTML
<a>. Fungsi JS yang digunakan untuk membuka window baru adalah menggunkan
properties window.open("namaDanUrlNewPage), seperti yang diberikan pada kode
sumber 5.13.

Nama File : jsLatih13.html
<hfm1>
<head>
<sc1pf fype="fexf/avasc1pf">
funcf1on myPopup{} {
//a1amaf ukL yang akan d1 buka pada W1ndoW bau
W1ndoW.open{"sLaf1h07.hfm1" }
}
</sc1pf>
</head>
<body>
<fom>
<1npuf fype="buffon" onC11ck="myPopup{}" va1ue="POPuP">
</fom>
<p onC11ck="myPopup{}">CLlCk ML 1OO!</p>
</body>
</hfm1>
Kode Sumber 5.13. Popup untuk Membuka Window Baru

Beberapa argumen yang terdapat pada fungsi window.open() adalah :
Dependent : sub window akan di tutup jika parent (window yang sedang
terbuka) window juga di tutup
Fullscreen : ditampilkan pada browser secara mode full screen
Height : tinggi untuk window baru dalam pixels
Width : lebar untuk window baru dalam pixels
Modul Pemrograman Web
Halaman | 60

Left : pixel offset dari sisi kiri screen
Top : pixel offset dari sisi atas screen
Resizable : window dapat diubah ukuranya atau tidak (0 = tidak dapat diubah,
dan 1 = dapat diubah)
Status : menampilkan status bar atau tidak (0 = status bar tidak ditampilkan,
dan 1 = status bar ditampilkan)

Dependent, fullscreen, resizable, and status dapat dilakukan set ON/OFF, jika bernilai 1
maka dalam kondisi ON, dan jika bernilai 0 maka dalam kondisi OFF.

Nama File : jsLatih14.html
<hfm1>
<head>
<sc1pf fype="fexf/avasc1pf">
funcf1on myPopup{} {
//a1amaf ukL yang akan d1 buka pada W1ndoW bau
//menggunakan bebeapa agumen
W1ndoW.open{"sLaf1h07.hfm1","myW1ndoW","sfafus =
1,he1ghf=300, W1dfh=300,es1zab1e=0"}
}
</sc1pf>
</head>
<body>
<fom>
<1npuf fype="buffon" onC11ck="myPopup{}" va1ue="POPuP">
</fom>
<p onC11ck="myPopup{}">CLlCk ML 1OO!</p>
</body>
</hfm1>
Kode Sumber 5.14. Popup untuk Membuka Window Baru Menggunakan Argumen

5.13. JS Date
Objek date digunakan pada saat dibutuhkan untuk menampilkan tanggal atau melakukan
perhitungan lamanya waktu tertentu pada suatu halaman web. Objek date memiliki
fungsi untuk menampilkan informasi tanggal sebagai berikut, seperti yang diberikan pada
kode sumber 5.15. dan 5.16. :
getTime() : menunjukan angka millisecond dari 1/1/1970 @12:00 AM
getSecond() : menunjukan angka detik (0-59)
getMinutes() : menunjukan angka menit (0-59)
getHours() : menunjukan angka jam (0-23)
getDay() : hari dalam satu minggu (0 = Sunday, ., 6 = Saturday)
getDate() : hari dalam satu bulan (0-31)
getMonth() : menunjukan angka bulan (0-11)
getFullYear() : menunjukan angka empat digit tahun (1970-9999)

Nama File : jsLatih15.html
<hfm1>
<body>
<h4>5ekaang 1angga1 :
<sc1pf fype="fexf/avasc1pf">
//dek1aas1 seka11gus 1n1s1a11sas1
va cuenf11me = neW Dafe{}
va day = cuenf11me.gefDafe{}
//monfh=monfh+1 , kaena aay monfh mu1a1 da1 0
va monfh = cuenf11me.gefMonfh{}+1
va yea = cuenf11me.gefIu11Yea{}

documenf.W1fe{day + "/" + monfh + "/" + yea}
documenf.W1fe{"<b>" + "Menggunakan Iungs1 dafe{}" + " "+Dafe{}}
</sc1pf>
Modul Pemrograman Web
Halaman | 61
</h4>
</body>
</hfm1>
Kode Sumber 5.15. Object Date

Nama File : jsLatih16.html
<hfm1>
<body>
<h4>5ekaang Jam :
<sc1pf fype="fexf/avasc1pf">
//dek1aas1 seka11gus 1n1s1a11sas1
va cuenf11me = neW Dafe{}
va hous = cuenf11me.gefhous{}
va m1nufes = cuenf11me.gefM1nufes{}

1f {m1nufes < 10}{
m1nufes = "0" + m1nufes
}
documenf.W1fe{hous + ":" + m1nufes + " "}
1f{hous > 11}{
documenf.W1fe{"PM"}
}
e1se {
documenf.W1fe{"AM"}
}
</sc1pf>
</h4>
</body>
</hfm1>
Kode Sumber 5.16. Variant Object Date

5.14. JS Form Validation
Form validation adalah metoda yang digunakan untuk melakukan pengecekan informasi
yang di-entry oleh pengguna halaman web sebelum dilakukan submit, dengan cara
menampilkan alert untuk memberikan informasi kepada pengguna terhadap kesalahan
entry data yang dilakukan. Misalnya pada suatu form isian semua fields harus diisi atau
tidak boleh ada fields yang kosong, seperti yang diberikan pada kode sumber 5.17.

Nama File : jsLatih17.html
<hfm1>
<head>
<sc1pf fype="fexf/avasc1pf">
// fungs1 va11das1 fom
funcf1on fomva11daf1on{fom}{
1f{nofLmpfy{fom.eq1}}{
1f{nofLmpfy{fom.eq2}}{
efun fue
}
}
efun fa1se
}//end funcf1on fomva11daf1on

// fungs1 cek e1emen f1dak bo1eh kosong fehadap agumen e1em
funcf1on nofLmpfy{e1em}{
//dek1aas1 seka11gus 1n1s1a11sas1
va sf = e1em.va1ue
1f{sf.1engfh == 0}{
a1ef{"5emua yang befanda{"} haus d11s1 / f1dak bo1eh
kosong"}
efun fa1se
}
e1se {//{sf.1engfh != 0}
efun fue
}
}//end funcf1on nofLmpfy
</sc1pf>
</head>
Modul Pemrograman Web
Halaman | 62

<body>
<!--on5ubm1f dapaf d1ganf1 dg menggunakan on81u-->
<fom name="examp1e" on5ubm1f="efun fomva11daf1on{fh1s}">
Nama 1 : <1npuf fype="fexf" name="eq1" />"<b/>
Nama 2 : <1npuf fype="fexf" name="eq2" />"<b/>
<b>
<1npuf fype="subm1f" va1ue="Check va11das1"/>
</fom>
</body>
</hfm1>
Kode Sumber 5.17. Validasi Form


5.15. JS Array
Array dapat dilihat sebagai banyak variabel yang disatukan. Anda dapat mengaksesnya
melalui satu nama dan penomoran. Misalnya array diberi nama names, maka mengakses
nama pertama dapat melalui names[0], nama kedua dengan names[1] dan seterusnya.
Setelah JS 1.1 (Netscape Navigator 3.0) Anda dapat menggunakan Array-object. Array
baru dibuat dengan perintah myArray = new Array(). Harganya diisi dengan kode
berikut:

myArray[0]=17;
myArray[1]=Stefan
myArray[2]=Koch

JS array sangat fleksibel, ukurannya dapat ditentukan secara dinamis. Jika Anda
menuliskan myArray[99]=xyz, ukuran array akan menjadi seratus elemen.Tidak jadi
masalah apakah yang disimpan adalah angka, string atau objek lain dalam array, seperti
yang diberikan pada kode sumber 5.18.
Nama File : jsLatih18.html
<hfm1>
<head>
</head>
<body>
<sc1pf fype="fexf/avasc1pf">
//dek1aas1 seka11gus 1n1s1a11sas1
va myAay = neW Aay{}
myAay|0]=17 // e1emen ke-1
myAay|1]="Amba" //e1emen ke-2
myAay|2]="M1anfh1" //e1emen ke-3

documenf.W1fe{"myAay|0] ada1ah e1emen ke-1 = " + myAay|0]+
"<b>"}
documenf.W1fe{"myAay|1] ada1ah e1emen ke-2 = " + myAay|1]+
"<b>"}
documenf.W1fe{"myAay|2] ada1ah e1emen ke-3 = " + myAay|2]}
</sc1pf>
</body>
</hfm1>
Kode Sumber 5.18. Array

5.16. JS Image
5.16.1. Image pada Halaman Web
Image-object bisa menggantikan gambar image pada satu halaman web, dan
memungkinkan juga untuk membuat animasi.
Bagaimana image dalam halaman web dapat diakses melalui array, Array disebut images
yang merupakan property dari document-object. Setiap image dalam halaman web
memiliki nomor. Image pertama bernomor 0, image kedua bernomor 1 dan seterusnya.
Jadi Anda bisa mengakses image pertama melalui documenf.1mages|0].
Modul Pemrograman Web
Halaman | 63
Setiap image dalam dokumen HTML dianggap sebagai sebuah image-object. Image-
object tentunya memiliki property yang dapat diakses melalui JavaScript. Ukuran yang
dimiliki image ditentukan dengan property WlD1h dan hLlGh1. Jadi
documenf.1mages|0].W1dfh akan memberi lebar (dalam pixel) image pertama dalam
halaman web yang ada.
Jika terdapat banyak image dalam satu halaman, tentu akan sulit untuk memberi nomor
seluruh image yang ada. Dengan memberikan nama untuk setiap image akan jauh
mempermudah hal ini.
<1mg sc=1mg.g1f name=mylmage W1dfh=100 he1ghf=100>

Anda akan bisa mengaksesnya melalui documenf.mylmage atau
documenf.1mages|mylmage], seperti yang diberikan pada kode sumber 5.19.

Nama File : jsLatih19.html
<hfm1>
<head>
</head>
<body>
<1mg sc="1mages/f1f1ep1c03.g1f" name="mylmage"W1dfh=200 he1ghf=200>
<sc1pf fype="fexf/avasc1pf">
//me1akukan pen1mpaan 1mages/f1f1ep1c03.g1f dg
//1mages/1ogo.png dengan ukuan gamba f1dak dapaf d1ubah
documenf.mylmage.sc="1mages/1ogo.png"
</sc1pf>
</body>
</hfm1>
Kode Sumber 5.19. Image pada Halaman Web

5.16.2. Melakukan Load Image
Untuk mengganti isi (file gambar) sebuah image pada web-page digunakan property
SRC. Property SRC mewakili alamat dari file gambar yang ditampilkan. Dengan
JavaScript 1.1 kita bisa mengisi alamat file gambar yang baru ke image yang telah di-
load pada web-page. Hasilnya adalah gambar pada lokasi yang baru akan di-load.
Gambar baru ini akan menggantikan gambar lama. Perhatikan contoh berikut ini:
<1mg sc=1mg.g1f name=mylmage W1dfh=100 he1ghf=100>

Image dengan file gambar img1.gif akan di-load dan bernama myImage. Baris kode
berikut akan menggantikan gambar lama img1.gif dengan gambar baru img2.gif:

documenf.mylmage.sc=1mg2.sc

Gambar yang baru akan berukuran sama dengan gambar lama. Ukuran tempat gambar
ditampilkan tidak bisa diubah, seperti pada kode sumber 5.19.

5.16.3. Pre-Load Image
Preloading image, yaitu me-load gambar lebih dahulu sebelum ditampilkan, sehingga
bisa mempersingkat waktu untuk menampilkan gambar yang baru. Untuk ini Anda harus
membuat Image-object tambahan. Lihat baris kode berikut :

h1ddenlmg=neW lmage{}
h1ddenlmg.sc=1mg3.g1f

Baris pertama membuat sebuah Image-object dengan nama hiddenImg. Baris kedua
mendefinisikan alamat gambar yang akan diwakili melalui object hiddenImg. Untuk
menampilkan gambar yang baru ini gunakan baris berikut:

Modul Pemrograman Web
Halaman | 64

documenf.mylmage.sc=h1ddenlmg.sc

Sekarang gambar diambil dari cache dan akan ditampilkan dengan jauh lebih cepat.
Inilah yang disebut preloading image, seperti yang diberikan pada kode sumber 5.20.
Tentu saja browser harus terlebih dahulu menyelesaikan pengambilan gambar yang
dimaksud.

Nama File : jsLatih20.html
<hfm1>
<head>
</head>
<body>
<1mg sc="1mages/f1f1ep1c03.g1f" name="mylmage"W1dfh=200 he1ghf=200>
<sc1pf fype="fexf/avasc1pf">
//1mage fe1eb1h dahu1u d1s1mpan d1 cache sebe1um d1 buka
h1ddenlmg=neW lmage{}
h1ddenlmg.sc="1mages/1ogo.png"
documenf.mylmage.sc=h1ddenlmg.sc
</sc1pf>
</body>
</hfm1>
Kode Sumber 5.20. Pre-Load Image

5.17. Studi Kasus
5.17.1. Pembuatan Tanggal
Nama File : jsLatih21.html
<!-- nama f11e : sLaf1h21.hfm1 -->
<!-- Desk1ps1 : pembuafan fangga1 s1sfem da1am bahasa 1ndones1a -->

<hfm1>
<head>
<1l1LL> konves1 1angga1 Da1am 8hs lndones1a </1l1LL>
</head>
<body>
<sc1pf 1anguage="Java5c1pf">
//dek1aas1 seka11gus 1n1s1a11sas1
va sekaang=neW Dafe{}
va namaha1=neW
Aay{"M1nggu","5en1n","5e1asa","kabu","kam1s","Jumaf","5abfu"}
va nama8u1an=neW Aay
{"Janua1","Iebua1","Maef","Ap11","Me1","Jun1","Ju11","Agusfus",
"5epfembe","Okfobe","Novembe","Desembe"}
va x=0
1f{sekaang.gefYea{}<2000} {
x=1900
}
va 1ahun=sekaang.gefYea{}+x
documenf.W1fe{sekaang.gefDafe{}+"
"+nama8u1an|sekaang.gefMonfh{}]+" "+1ahun}
</sc1pf>
</body>
</hfm1>
Kode Sumber 5.21. Konversi Tanggal Dalam Bahasa Indonesia

5.17.2. Multi Selection dan Menampilkan Source Code
Nama File : jsLatih22.html
<hfm1>
<head>
<f1f1e>Java5c1pf 5e1ecf1on</f1f1e>
<sc1pf>

// Iungs1 unfuk menamp11kan semua 11sf 1fem yg d1p111h
funcf1on shoW5e1ecf1ons{} {
va 1
Modul Pemrograman Web
Halaman | 65
va sf = ""

fo {1 = 0 1 < documenf.foms|0].11sf.1engfh 1++}
1f {documenf.foms|0].11sf|1].se1ecfed}
sf = sf + documenf.foms|0].11sf|1].va1ue + "\n"

a1ef{sf}
}
</sc1pf>
</head>
<body>
<fonf face="A1a1,he1vef1ca" s1ze=2>

<!-- A mu1f1p1e se1ecf1on 11sf. -->
<b>Confoh menggunakan mu1f1p1e se1ecf1on 11sf:</b>
<p>
511ahkan p111h safu afau 1eb1h kafego1 be1kuf:
<p>
<fom>
<se1ecf name="11sf" mu1f1p1e s1ze=4>
<opf1on va1ue="neWs">NeWs</opf1on>
<opf1on va1ue="spofs">5pofs</opf1on>
<opf1on va1ue="Weafhe">Weafhe</opf1on>
<opf1on va1ue="enfefa1nmenf">Lnfefa1nmenf</opf1on>
<opf1on va1ue="commun1fy">Commun1fy</opf1on>
<opf1on va1ue="evenfs">Lvenfs</opf1on>
<opf1on va1ue="d1n1ng">D1n1ng</opf1on>
<opf1on va1ue="home">home and Gaden</opf1on>
<opf1on va1ue="ea1 esfafe">kea1 Lsfafe</opf1on>
</se1ecf>
<p>
<1npuf fype="buffon" va1ue="1amp11kan P111han"
onC11ck="shoW5e1ecf1ons{}">
<1npuf fype="esef" va1ue="hapus P111han">
</fom>
</fonf>
<p>

<!-- menamp11kan souce code -->
<fom on5ubm1f="1ocaf1on.hef = `v1eW-souce:` + 1ocaf1on efun
fa1se">
<1npuf fype="subm1f" va1ue="1amp11kan 5ouce Code">
</fom>
</fonf>
</body>
</hfm1>
Kode Sumber 5.22. Multi Selection dan Menampilkan Source Code

5.17.3. Open Window Baru
Nama File : jsLatih23.html
<hfm1>
<head>
<f1f1e>Java5c1pf Membuka W1ndoWs 8au</f1f1e>
<sc1pf>
// Iungs1 membuka W1ndoWs bau dg menspes1f1kas1kan ukL
funcf1on shoWAnsWe{u1} {
W1ndoW.open{u1, "ansWe",
"he1ghf=110,W1dfh=200,d1ecfo1es=no,1ocaf1on=no,menuba=no," +
"es1zeab1e=no,sfafus=no,foo1ba=no"}
efun fa1se
}
</sc1pf>
</head>
<body bgco1o="#ffffff">
<fonf face="A1a1,he1vef1ca" s1ze=2>

<!-- 5ef1ap 11nk memangg11 shoWAnsWe{} ufk menamp11kan W1ndoWs bau
yang sesua1 -->
<b>Membuka W1ndoWs 8au</b>
<p>
Pop qu1z:
Modul Pemrograman Web
Halaman | 66

<p>
<o1>
<11>Mafa ku11ah Yang sedang Anda Pe1aa1?<b>
<a hef="#" onC11ck="efun
shoWAnsWe{`ansWe1.hfm1`}">AnsWe</a>
<p>
<11>Mafa ku11ah Yang pa11ng Anda 5uka1?<b>
<a hef="#" onC11ck="efun
shoWAnsWe{`ansWe1.hfm1`}">AnsWe</a>
<p>
</o1>
</fonf>
<p>

<!-- Menamp11kan souce code -->
<fom on5ubm1f="1ocaf1on.hef = `v1eW-souce:` + 1ocaf1on efun
fa1se">
<1npuf fype="subm1f" va1ue="v1eW 5ouce">
</fom>
</fonf>
</body>
</hfm1>
Kode Sumber 5.23. Open Window Baru

Nama File : answer1.html
<hfm1>
<head>
<f1f1e>Java5c1pf 1ufo1a1</f1f1e>
</head>
<body bgco1o="#000000" fexf="#ffffff">
<cenfe>
<fonf face="A1a1,he1vef1ca" s1ze=4><b>lnfenef
Pogamm1ng</b></fonf>
<p>
<fom>
<1npuf fype=subm1f va1ue="C1ose" onC11ck="W1ndoW.c1ose{} efun
fa1se">
</fom>
</cenfe>
</body>
</hfm1>
Kode Sumber 5.24. Window Baru

5.17.4. Object Window
Nama File : jsLatih24.html
<hfm1>
<head>
<f1f1e>Java5c1pf W1ndoWs Obecf</f1f1e>
<sc1pf>
funcf1on a1ef1esf{} {

a1ef{"Pess Ok fo conf1nue."}
documenf.foms|"message"].fexf.va1ue = ""
efun fa1se
}
funcf1on conf1m1esf{} {
1f{conf1m{"Conf1nue?"}}
documenf.foms|"message"].fexf.va1ue = "Ok pessed."
e1se
documenf.foms|"message"].fexf.va1ue = "Cance1 pessed."
efun fa1se
}
funcf1on pompf1esf{} {
va name
name = pompf{"P1ease enfe you name:", ""}
documenf.foms|"message"].fexf.va1ue = "he11o " + name + "!"
efun fa1se
}
Modul Pemrograman Web
Halaman | 67
</sc1pf>
</head>
<body bgco1o="#ffffff">
<fonf face="A1a1,he1vef1ca" s1ze=2>
<b>D1a1og W1ndoWs.</b>
<p>

<!-- L1nks menggunkan evenf hand1es ufk memangg11 d1a1og funcf1on --
>
5e1ecf a d1a1og box fo d1sp1ay:
<p>
<u1>
<11><a hef="#" onC11ck="efun a1ef1esf{}">A1ef D1a1og</a>
<11><a hef="#" onC11ck="efun conf1m1esf{}">Conf1m D1a1og</a>
<11><a hef="#" onC11ck="efun pompf1esf{}">Pompf D1a1og</a>
</u1>
<p>
<fom name="message">
<b>kesu1f:</b> <1npuf name="fexf" fype="1npuf" va1ue="">
</fom>

<!-- menamp11kan souce code -->
<fom on5ubm1f="1ocaf1on.hef = `v1eW-souce:` + 1ocaf1on efun
fa1se">
<1npuf fype="subm1f" va1ue="v1eW 5ouce">
</fom>
</fonf>
</body>
</hfm1>
Kode Sumber 5.25. Object Window








Modul Pemrograman Web
Halaman | 68

BAB 6
Document Object Model (DOM)

6.1 DOM dan Cara Modifikasinya dengan Javascript
Document Object Model (DOM) merupakan suatu struktur pohon(tree) yang
mempresentasikan halaman HTML. Perhatikan contoh kode HTML berikut dan
korespondensinya dengan pohon DOM.

<d1v 1d="samp1e">
1h1s 1s a <b>samp1e of h1ML</b> <b> fo demonsfafe fhe DOM
</d1v>

Struktur DOM yang berkorespondensi:


Pada contoh di tersebut, tag Dlv merupakan elemen akar(root), yang berisi tag-tag
dan teks. Elemen Dlv punya dua objek yang berasosiasi dengannya, atribut yang
mereferensi pada seluruh tag (elemen) dan elemen anak(childNodes) yang
mereferensi selainnya (berisi tag dan teks).
Penting untuk dipahami bahwa teks dianggap sebagai elemen pula. Suatu teks
yang tidak mengandung elemen beserta elemen anak, maka dianggap sebagai
sebuah elemen (sebagai contoh, "this is a" merupakan sebuah elemen).

Jadi bagaimana cara mengakses DOM dengan memakai Javascript? Baik IE dan
Firefox mendukung fungsi DOM gefL1emen8yld:
va e1m=documenf.gefL1emen8yld{"samp1e"}
// mengakses efeens1 pada e1emen Dlv

Fungsi gefL1emen8yld menempatkan sebuah elemen dengan memanfaatkan
atribut lD-nya (pada kasus ini, elemen lD pada DIV sebagai contoh). Dengan
demikian, pastikanlah terdapat atribut lD pada elemen yang akan diakses dengan
Javascript.

Perhatikan contoh pengaksesan DOM:
a1ef{e1m.aff1bufes.1d.va1ue} // memuncu1kan a1ef "samp1e"
a1ef{e1m.ch11dNodes|0].node1ype} // memuncu1kan a1ef 3 - 1Lk5
NODL
a1ef{e1m.ch11dNodes|0].nodeva1ue} // memuncu1kan a1ef "fh1s 1s a"
Modul Pemrograman Web
Halaman | 69
a1ef{e1m.ch11dNodes|1].node1ype} // memuncu1kan a1ef 1 - LLLMLN
NODL
a1ef{e1m.ch11dNodes|1].nodeva1ue} // memuncu1kan a1ef nu11 -
e1emen nodes don`f have a va1ue
a1ef{e1m.ch11dNodes|1].ch11dNodes|0].nodeva1ue} //memuncu1kan
a1ef "samp1e of h1ML"
e1m.ch11dNodes|0].nodeva1ue="Whaf a " // mengubah konfen e1emen
1LX1 menad1 "Whaf a "

Kita dapat pula mengakses konten suatu elemen sebagai teks:
va e1m=documenf.gefL1emen8yld{"samp1e"}
a1ef{e1m.1nneh1ML}
// memuncu1kan a1ef "1h1s 1s a <b>samp1e of h1ML</b> <b> fo
demonsfafe fhe DOM"
e1m.1nneh1ML+=" <b>1ef`s move on"

1nneh1ML memberikan akses langsung pada level teks ke dalam apapun yang
terkandung dalam elemen. Kita dapat menggantikan atau menambahkan konten
dan DOM akan membangunnya kembali secara on the fly. Berikut kondisi DOM
setelah kode di atas dieksekusi:



6.2 Membuat Widget DOM secara Dinamis
Widget tampak seperti ini:


Kode HTML-nya adalah sebagai berikut:
<sfy1e>
.W1dgef{
W1dfh: 250px
m1n-he1ghf: 50px
bode: 1px so11d #CACACA
backgound-co1o: #IIIILA
</sfy1e>
...
<body>
<d1v 1d=`1d1` c1ass=`W1dgef` sfy1e=`W1dfh: 250px`>
<d1v 1d=`Wdag` sfy1e=`W1dfh: 100x he1ghf: 16 backgound-co1o:
#CCCCII bode-boffom: 1px so11d #CACACA`>
<fab1e 1d=`d` sfy1e=`fonf-fam11y: a1a1 fonf-s1ze: 8pf`
W1dfh=100x ce11padd1ng=0 ce11spac1ng=0 bode=0>
<f>
Modul Pemrograman Web
Halaman | 70

<fd a11gn=1eff><span 1d=`1d1f1f1e` sfy1e=`padd1ng-1eff:
5px`>W1dgef 11f1e 8a</span></fd>
<fd a11gn=1ghf> <span sfy1e=`padd1ng-1ghf: 5px`>
<a hef=`#` sfy1e=`feks-decoaf1on:
none`><b>X</b></a></span></fd>
</f>
</fab1e>
</d1v>
<d1v 1d=`1d1konfen` sfy1e=`padd1ng: 5px fonf-fam11y: a1a1 fonf-
s1ze: 8pf W1dfh: 100x`>
W1dgef 8ody {fh1s 1s Whee fhe W1dgef konfen 1s go1ng fo be
p1aced}</d1v>
</d1v>

Widget memiliki dua bagian, Judul(title bar) dan badan(body). Judul berisi
hkLI{`X`} yang akan kita gunakan untuk membangkitkan event menutup widget.
Berikut ini merupakan cara dinamis menambahkan widget.
...
<1npuf fype=buffon va1ue="Add W1dgef" onc11ck="addW1dgef{}">
<d1v 1d="W1dgef1"></d1v>
...
<sc1pf 1anguage="Java5c1pf">
<!--

va counfe=10

funcf1on addW1dgef{}{
va ef=documenf.gefL1emen8yld{"W1dgef1"}
// menca1kan fempaf unfuk W1dgef
va W1d="1d"+counfe
// membuaf lD yang un1k unfuk W1dgef
counfe++
va Wsf="<d1v 1d=`"+W1d+"` c1ass=`W1dgef` sfy1e=`fop: 130 1eff:
300
W1dfh: 250px`>" + "<d1v 1d=`Wdag` sfy1e=`cuso: move W1dfh:
100x
he1ghf: 16 " + "backgound-co1o: #CCCCII bode-boffom: 1px
so11d
#CACACA `>" + "<fab1e 1d=`d` sfy1e=`fonf-fam11y: a1a1
fonf-s1ze: 8pf` W1dfh=100x ce11padd1ng=0 ce11spac1ng=0
bode=0>" +
"<f><fd ALlGN=1eff><span 1d=`1d1f1f1e` sfy1e=`padd1ng-1eff:
5px`>
W1dgef 11f1e 8a</span>" + "</fd><fd a11gn=1ghf> <span
sfy1e=`padd1ng-1ghf: 5px`>" + "<a hef=avasc1pf:c1oseW1dgef{
`"+W1d+"`} sfy1e=`fexf-decoaf1on: none`>"+
"<b>X</b></a></span>
</fd> </f></fab1e> </d1v>"+ "<d1v 1d=`1d1konfen`
sfy1e=`padd1ng: 5px fonf-fam11y: a1a1 fonf-s1ze: 8pf
W1dfh: 100x`>" + "W1dgef 8ody {fh1s 1s Whee fhe W1dgef confenf
1s go1ng fo be p1aced} </d1v></d1v>"
ef.1nneh1ML+=Wsf // menempafkan W1dgef pada 1aya
}

funcf1on c1oseW1dgef{1d}{
va W1dgef1=documenf.gefL1emen8yld{`W1dgef1`}
va node=documenf.gefL1emen8yld{1d}
W1dgef1.emoveCh11d{node}
}
//-->
</sc1pf>
...
Modul Pemrograman Web
Halaman | 71

Pertama kita tambahkan sebuah tombol(button) pada layar, dan memanggil fungsi
addW1dgef ketika diklik. Kemudian kita definisikan elemen Dlv dengan lD
`W1dgef1` yang akan disajikan sebagai objek - inilah dimana widget akan
ditempatkan.
Fungsi addW1dgef dalam Javascript amat sederhana: kita cukup mereferensi pada
objek elemen Dlv, membuat string(=`untai,`kalimat) yang berisi definisi widget
(kita dapat menuliskan tag HTML sebagai sebuah string panjang) dan lalu kita
menuliskannya pada elemen Dlv, sehingga browser menambahkan sebuah widget
pada layar.

Catatan penting:
1. Untuk mengubah pointer mouse menjadi bentuk 'drag' ketika pengguna
mendekatkannya di title bar (hover event), maka kita tambahkan:
`cuso: move` dalam definisi CSS definition pada <d1v 1d=`Wdag`
sfy1e=`cuso: move W1dfh: 100x... e1emen.
Terdapat banyak bentuk pointer mouse yang dapat dipilih.
2. Untuk memanggil fungsi c1oseW1dgef, kita tambahkan:
hef=avasc1pf:c1oseW1dgef{`"+W1d+"`} pada HREF 'X'.
W1d merupakan lD untuk widget, memungkinkan fungsi c1oseW1dgef untuk
menutup widget sesuai yang dimaksud.

Fungsi c1oseW1dgef dalam Javascript menempatkan elemen DOM
berkorespondensi dengan ID widget dan 'widget1' (objek) serta menghapus elemen
DOM dengan fungsi emoveCh11d.

6.3 Menggeser DOM Widget
Untuk menggeser suatu objek terdapat langkah-langkah sebagai berikut:
1. Mendeteksi klik-kiri mouse pada suatu objek
2. Mendeteksi pergerakan mouse selama dalam kondisi klik-kiri
3. Menggeser objek mengikuti gerakan mouse
4. Mendeteksi lepas-klik mouse untuk menghentikan penggeseran objek

Perhatikan kode HTML berikut:
<d1v 1d=`W1dgef1` c1ass=`W1dgef` sfy1e=`pos1f1on: abso1ufe 1eff:
150fop: 150 W1dfh: 250`>
<d1v sfy1e=`cuso: move W1dfh: 100x he1ghf: 16 backgound-co1o:
#CCCCII bode-boffom: 1px so11d #CACACA `>
<fab1e sfy1e=`fonf-fam11y: a1a1 fonf-s1ze: 8pf` W1dfh=100x
ce11padd1ng=0 ce11spac1ng=0 bode=0>
<f>
<fd ALlGN=1eff 1d=`f1f1eba` sfy1e=`padd1ng-1eff: 5px`>W1dgef
11f1e 8a</fd>
<fd a11gn=1ghf sfy1e=`padd1ng-1ghf: 5px`> <a hef=`#`
sfy1e=`feks-decoaf1on:none`><b>X</b></a></fd>
</f>
</fab1e>
</d1v>
<d1v 1d=`` sfy1e=`padd1ng: 5px fonf-fam11y: a1a1 fonf-s1ze: 8pf
W1dfh: 100x`>
W1dgef 8ody {fh1s 1s Whee fhe W1dgef konfen 1s go1ng fo be
p1aced}</d1v>
</d1v>

Modul Pemrograman Web
Halaman | 72

Buat widget pada layar, sebagaimana yang pada contoh sebelumnya. Perlu
diperhatikan bahwa agar dapat memposisikan secara bebas widget dimanapun
pada layar, kita perlu menggunakan pos1f1on:abso1ufe dalam definisi CSS.
Sekarang kita dapat memerintahkan browser dimana harus meletakkan widget, dan
kita menggunakan 1eff: 150 fop: 150 untuk menempatkan widget pada 150
pixel dari kiri (x=150) dan 150 pixel dari atas (y=150).

Perhatikan kode Javascript berikut:
va x,y
va fx, fy
va 1sDag=fa1se
va f1efox=documenf.gefL1emen8yld&&!documenf.a11
documenf.onmousemove=mouseMove
documenf.onmousedoWn=se1ecfMouse
documenf.onmouseup=fungs1{} {
1sDag=fa1se
}

fungs1 se1ecfMouse{e} {
1f {f1efox} {
// meme1ksa bahWa use mengk11k e1emen f1f1e ba
va p=e.fagef
1f{p.aff1bufes|`1d`]&&p.aff1bufes|`1d`].va1ue=="f1f1eba"}
{
1sDag=fue
x=e.c11enfX
y=e.c11enfY
// mengamb11 n11a1 kood1naf W1dgef
fx=paselnf{documenf.gefL1emen8yld{`W1dgef1`}.sfy1e.1eff}
fy=paselnf{documenf.gefL1emen8yld{`W1dgef1`}.sfy1e.fop}
}
}
e1se { //lL
// meme1ksa bahWa use mengk11k e1emen f1f1e ba
va p=evenf.scL1emen
1f {p.aff1bufes|`1d`]&&p.aff1bufes|`1d`].va1ue=="f1f1eba"}
{
1sDag=fue
x=evenf.c11enfX
y=evenf.c11enfY
// mengamb11 n11a1 kood1naf W1dgef
fx=paselnf{documenf.gefL1emen8yld{`W1dgef1`}.sfy1e.1eff}
fy=paselnf{documenf.gefL1emen8yld{`W1dgef1`}.sfy1e.fop}
}
}
}
fungs1 mouseMove{e} {
1f {1sDag} { // gese box W1dgef menuuf geakan mouse
va box=documenf.gefL1emen8yld{"W1dgef1"}
1f {f1efox} {
box.sfy1e.1eff = e.c11enfX + {fx - x}
box.sfy1e.fop = e.c11enfY + {fy - y}
}
e1se { //lL
box.sfy1e.1eff = evenf.c11enfX + {fx - x}
box.sfy1e.fop = evenf.c11enfY + {fy - y}
}
}
}

Modul Pemrograman Web
Halaman | 73
1sDag bernilai fue ketika user menggeser widget (ketika user mengeklik mouse
dan belum melepasnya). Setiap kali mouse berpindah fungsi mouseMove akan
menanganinya, ketika mouse diklik fungsi se1ecfMouse akan menanganinya, dan
ketika mouse dilepaskan maka 1sDag diset bernilai fa1se.

x,y menyimpan nilai koordinat mouse ketika diklik, fx,fy menyimpan nilai
koordinat widget ketika mouse diklik (x=1eff, y=fop). Hal ini memungkinkan kita
memperhitungkan keseimbangan gerakan mouse jika dibandingkan dengan
gerakan widget agar pergeseran berlaku secara tepat.

Ketika terjadi event mouse diklik, fungsi se1ecfMouse dipanggil
(documenf.onmousedoWn=se1ecfMouse). Fungsi se1ecfMouse akan meme1ksa
bahwa mouse diklik pada titlebar widget. Pada Firefox hal ini dilakukan dengan
mengakses atribut target dari objek event (menyimpan referensi kepada elemen
DOM yang diklik) dan kemudian memeriksa bahwa elemen memiliki atribut lD
dengan value 'titlebar'. Pada IE hal ini dilakukan dengan mengecek atribut
scL1emen dari objek event global dan kemudian menjalani proses yang sama.

Jika user melakukan klik pada titlebar, maka dragflag diset menjadi bernilai fue
(1sDag=fue) dan menyimpan koordinat klik mouse pada x,y. Kita kemudian
menyimpan koordinat widget atribut Dlv widget1 dengan mencacah 1eff, fop
pada atribut CSS dan menyimpan nilainya pada variabel fx,fy.

Ketika mouse berpindah, terlebih dahulu dicek apakah 1sDag dalam kondisi fue
(dengan kata lain, user masih menahan klik-kiri mouse). Jika demikian, kita
mengeset atribut CSS 1eff dan fop pada Dlv widget untuk meng-update koordinat
mouse denan mengambil nilai koordinat mouse saat ini dan menambahkan selisih
antara koordinat mouse dan sudut kiri atas(top left corner) dari widget.


Modul Pemrograman Web
Halaman | 74

Bab 7
Dynamic HTML (DHTML)

7.1 Pengantar
DHTML adalah HTML dengan tambahan format-format khusus dan script untuk membuat
halaman-halaman Web lebih interaktif. Meski baik Microsoft Internet Explorer 4.0 dan
Netscape Communicator 4.0 mendukung fitur-fitur DHTML, kedua cara yang digunakan
tidak kompatibel, sehingga sebuah halaman yang ditulis dengan DHTML mungkin terlihat
baik pada salah satu browser tetapi tidak bisa dibuka dengan baik pada browser lainnya.

DHTML merupakan suatu kumpulan teknologi yang digunakan bersama-sama untuk
menciptakan websites yang interaktif dan animatif dengan memanfaatkan kombinasi
dari Markup-Language (seperti HTML), bahasa scripting klien (seperti JavaScript), bahasa
pendefinisi tampilan (CSS), serta Document Object Model.
Secara umum, suatu konsep web dinamis berarti halaman web yang di-generate secara
berbeda untuk masing-masing pengguna, memuat peristiwa, atau nilai variabel yang
spesifik. Termasuk diantaranya halaman yang tercipta oleh script klien, dan di sisi lain
oleh script server (semisal PHP atau Perl) dimana web server meng-generate isi sebelum
dikirimkan kepada komputer klien.
DHTML sering digunakan untuk membuat tombol rollover atau menu drop-down pada
halaman web.
Kegunaan lain yang tidak umum yaitu untuk membuat browser berbasis action games.
Selama akhir dekade 1990-an hingga awal dekade 2000-an, sejumlah game diciptakan
dengan DHTML. Namun perbedaan diantara masing-masing browser membuat hal ini
sulit diterapkan; banyak teknik yang harus diimplementasikan dalam kode program
supaya game dapat berjalan pada multi platform. Browser-browser baru telah berkumpul
untuk mengkuti standardisasi web, dibuat dengan desain game DHTML. Game dapat
dijalankan pada kebanyakan browser serta terhubung pada Widgets for Mac OS X dan
Gadgets for Windows Vista, yang berbasis pada kode DHTML.
Beberapa kelemahan DHTML yaitu sulitnya dalam proses pengembangan dan
debug(testing) oleh derajat perubahan dari dukungan browser terhadap teknologi yang
bersangkutan, dan variasi ukuran layar monitor menjadikan tampilan final hanya dapat
dinikmati jika menemui kondisi fine-tuned(ukuran layar spesifik dan dukungan teknologi
browser). Pengembangan bagi browser-browser terbaru, seperti Internet Explorer 5.0+,
Mozilla Firefox 2.0+, and Opera 7.0+, terbantu oleh pembagiaksesan(shared) Document
Object Model.

Secara khusus suatu halaman web DHTML disiapkan dengan cara berikut:
<!DOC1YPL hfm1 Pu8LlC "-//W3C//D1D Xh1ML 1.1//LN"
"hffp://WWW.W3.og/1k/xhfm111/D1D/xhfm111.dfd">
<hfm1 xm1ns="hffp://WWW.W3.og/1999/xhfm1">
<head>
<f1f1e>Dh1ML examp1e</f1f1e>
<sc1pf fype="fexf/avasc1pf">
funcf1on 1n1f{} {
myOb = documenf.gefL1emenf8yld{"nav1gaf1on"}
// .... moe code
}
W1ndoW.on1oad=1n1f
</sc1pf>
</head>
<body>
<d1v 1d="nav1gaf1on"></d1v>
</body>
</hfm1>
Modul Pemrograman Web
Halaman | 75

Kode berikut mengilustrasikan fungsi-fungsi yang sering dipakai. Bagian tambahan
halaman web hanya akan ditampilkan jika pengguna memintanya. Dalam e-learning,
fungsi-fungsi dpat digunakan untuk menampilkan petunjuk tambahan yang pada awalnya
tidak ditampilkan.

<!DOC1YPL hfm1 Pu8LlC "-//W3C//D1D Xh1ML 1.0 5f1cf//LN"
"hffp://WWW.W3.og/1k/xhfm11/D1D/xhfm11-sf1cf.dfd">
<hfm1 xm1ns="hffp://WWW.W3.og/1999/xhfm1" xm1:1ang="en">
<head>
<f1f1e>1esf</f1f1e>
<sfy1e fype="fexf/css">
h2 {backgound-co1o: 11ghfb1ue W1dfh: 100x}
a {fonf-s1ze: 1age backgound-co1o: go1denod}
a:hove {backgound-co1o: go1d}
#examp1e1 {d1sp1ay: none mag1n: 3x padd1ng: 4x
backgound-co1o: 11megeen}
</sfy1e>
<sc1pf fype="fexf/avasc1pf">
funcf1on changeD1sp1ay5fafe {1d} {
d=documenf.gefL1emenf8yld{"shoWh1de"}
e=documenf.gefL1emenf8yld{1d}
1f {e.sfy1e.d1sp1ay == `none` || e.sfy1e.d1sp1ay == ""} {
e.sfy1e.d1sp1ay = `b1ock`
d.1nneh1ML = `h1de examp1e`
} e1se {
e.sfy1e.d1sp1ay = `none`
d.1nneh1ML = `5hoW examp1e`
}
}
</sc1pf>
</head>
<body>
<h2>hoW fo use a DOM funcf1on</h2>
<d1v><a 1d="shoWh1de"
hef="avasc1pf:changeD1sp1ay5fafe{`examp1e1`}">5hoW examp1e</a></d1v>
<d1v 1d="examp1e1">
1h1s 1s fhe examp1e.
{Add1f1ona1 1nfomaf1on, Wh1ch 1s on1y d1sp1ayed on equesf}...
</d1v>
<d1v>1he genea1 fexf conf1nues...</d1v>
</body>
</hfm1>

7.2. DHTML sebagai Perpaduan Teknologi Web
DHTML mampu mengerjakan hal-hal tertentu yang tersembunyi seperti mengirimkan
cookies (berkas yang menyimpan sesi autentifikasi dan autorisasi) atau mendeteksi
informasi-informasi dalam komputer pengunjung. Ide dasarnya adalah suatu halaman
web yang cerdas namun sederhana dengan memanfaatkan teknologi server dan script
sekaligus.

XHTML
XHTML atau HTML 4.x digunakan untuk menciptakan halaman itu sendiri dan
membangun unsur-unsur untuk CSS dan DOM untuk bekerja terpasang. Tidak ada yang
khusus tentang XHTML untuk DHTML. tetapi mempunyai XHTML yang valid.

Client-side Script
Penulisan script menggunakan JavaScript atau ActiveX yang merupakan bahasa
pemrogaman paling umum yang digunakan untuk mengaktifkan DHTML. Disamping itu
menggunakan suatu script untuk mengendalikan object itu untuk menetapkan DOM.


Modul Pemrograman Web
Halaman | 76

CSS (Cascading StyleSheet)
Ini merupakan bagian dari DHTML (Dynamic HTML), di mana kita dapat menentukan
rancangan/desain layout tampilan dari HTML yang kita buat, dari jenis tulisan, warna
background, dan sebagainya. Semua di control dan disetting di CSS, memudahkan dalam
menjaga konsistensi rancangan web kita.
Contoh untuk style text :
/" C55 Documenf "/
8ody {
padd1ng: 0
mag1n: 0
fexf-a11gn:cenfe
}
#confa1ne {
W1dfh:800px
fexf-a11gn: 1eff
pos1f1on: e1af1ve
}
// pembag1an ha1aman unfuk head
#head {
W1dfh: 100x
backgound-1mage:u1{1mage/head.pg}
he1ghf: 140px
}
// pembag1an ha1aman unfuk 11nk menu
#menu {
backgound-co1o:#bde9fb
1mage-a11gn: 1ghf
he1ghf: 35px
W1dfh: 100x
}
// pembag1an ha1aman unfuk confenf
#confenf {
backgound-co1o: #D6D3D6
backgound-1mage:u1{1mage/semuf.pg}
backgound-pos1f1on: 1ghf boffom
backgound-epeaf: no-epeaf
he1ghf: 500px
W1dfh: 780px
padd1ng: 10px 10px 10px 10px
}

Setiap menggunakan CSS, tiap bagian dipanggil dengan tag <d1v 1d=> dan ditutup
dengan tag </d1v>.

DOM
DOM adalah sesuatu yang mengijinkan kita untuk mengakses semua bagian dari
Halaman web untuk mengubah isinya dengan DHTML. Tiap-Tiap bagian dari suatu
Halaman web ditetapkan oleh DOM dan penggunaan yang konsisten menamai konvensi
yang mengijinkan kita dapat mengakses halaman itu dan merubah isinya.

XML (eXtensible Markup Language)
Kalau HTML itu tag-tagnya dapat dimengerti oleh browser dan mendefinisikan format
tampilan, XML memiliki tag-tag bebas dan dapat didefinisikan sendiri oleh pengguna, di
mana digunakan untuk merepresentasikan suatu data.
Contoh style untuk membuat halaman web :

Modul Pemrograman Web
Halaman | 77
Bab 8
Extensible Markup Language (XML)

8.1. Pengertian XML
XML kependekan dari eXtensible Markup Language
XML adalah markup language / bahasa markup seperti HTML
XML didesain untuk menggambarkan data.
XML tags tidak didefinisikan dalam XML sendiri.
XML menggunakan DTD (Document Type Definition) untuk menggambarkan data
XML dengan DTD didesain untuk menggambarkan diri sendiri/self describing.
Contoh DTD :
<!DOC1YPL book11sf
|
<!LLLMLN1 book11sf {book"}>
<!LLLMLN1 book {f1f1e,aufhos,pub11she,pages?,1sbn,p1ce+}>
<!LLLMLN1 aufhos {aufho+}>
<!LLLMLN1 f1f1e {#PCDA1A}>
<!LLLMLN1 aufho {#PCDA1A}>
<!LLLMLN1 pub11she {#PCDA1A}>
<!LLLMLN1 pages {#PCDA1A}>
<!LLLMLN1 1sbn {#PCDA1A}>
<!LLLMLN1 p1ce {#PCDA1A}>
<!A11Ll51 p1ce cuency CDA1A #kLqulkLD>
]
>

8.2. Tentang XML
XML dapat digunakan secara langsung di Internet, mendukung berbagai aplikasi
secara luas, serta kompatibel dengan SGML. Dengan demikian XML mudah
digunakan untuk membuat program yang melakukan proses parsing dokumen XML.

XML dan HTML
XML didesain untuk membawa/carry data
XML tidak untuk menggantikan HTML XML and HTML didesain dengan tujuan
berbeda XML didesain untuk menggambarakan data dan fokusnya pada apakah
data itu?. HTML didesain untuk menampilkan data, dan fokus pada bagaimana data
tampak HTML mengenai menampilkan informasi, XML mengenai menggambarkan
informasi.

XML tidak didesain untuk melakukan apapun
Mungkin hal ini sukar dimengerti tetapi XML adalah cara untuk membangun
struktur serta menyimpan dan mengirim informasi. Contoh berikut adalah sebuah
pesan untuk Tove dari Jani, disimpan sebagai dokumen XML:

<nofe>
<fo>1ove</fo>
<fom>Jan1</fom>
<head1ng>kem1nde</head1ng>
<body>Don`f fogef me fh1s Weekend!</body>
</nofe>

Pesan di atas memiliki header dan body juga memiliki informasi pengirim dan
penerima, tetapi dokumen XML di atas tidak melakukan apapun. Semua di atas
hanyalah sebatas informasi dan tidak melakukan apapun. Harus ada software untuk
mengirimnya, menerima atau menampilkannya.
Modul Pemrograman Web
Halaman | 78


XML sebagai pelengkap HTML
Sangat penting untuk dimengerti bahwa XML tidak untuk menggantikan HTML. Di
masa depan dapat dikatakan bahwa XML digunakan untuk menggambarkan data
(definisi data) dan HTML digunakan untuk memformat dan menampilkan data
tersebut. Dengan kata lain, XML adalah tool yang independen untuk
mentransmisikan informasi yang memiliki sifat cross platform baik software
maupun hardware.

XML akan ada di mana-mana
HTML merupakan fondasi dari Web sedangkan XML akan menjadi alat utama untuk
manipulasi data dan transmisi data

8.3. Penggunaan XML
XML dapat memisahkan data dari HTML
Dengan XML data dapat tersimpan terpisah dari HTML sehingga kita dapat
berkonsentrasi menggunakan HTML hanya untuk layout data dan tampilannya
sehingga kita tidak khawatir perubahan data akan mengubah HTML
XML digunakan untuk pertukaran data
Dengan XML, data dapat dipertukarkan antara sistem yang tidak kompatibel Dalam
kasus nyata, sistem komputer dan database meyimpan data dalam format yang
tidak kompatibel satu sama lain. Hal itu menjadi salah satu hambatan bagi para
developer untuk mempertukarkan data di Internet Dengan mengkonversikan data
ke XML kita dapat mengurangi kompleksitas masalah dan membuat data yang
dapat dibaca oleh berbagai tipe aplikasi

XML dan B2B
Dengan XML, informasi finansial dapat dipertukarkan melalui internet sehingga
pertukaran aplikasi B2B akan menjadi lebih baik.

XML untuk Membagi Data
XML biasanya disimpan sebagai berkas teks biasa (plaintext) namun dapat
menyatakan pembagian data. Dengan demikian, tersedia jalan yang independen
untuk membagi data. Hal ini memudahkan untuk membuat data yang dapat
digunakan oleh aplikasi-aplikasi berbeda, selain itu juga memudahkan untuk
mengekspansi dan mengupgrade ke sistem operasi baru, server baru, aplikasi baru
dan browsers baru.

XML untuk Menyimpan Data
Dengan XML, file teks biasa dapat untuk menyimpan data
XML juga dapat digunakan untuk menimpan data dalam file maupun database.
Aplikasi tertentu dapat dibuat untuk menulis dan mengambil informasi dari tempat
penyimpanan dan aplikasi umum dapat digunakan untuk menampilkan data.

XML Membuat Data Lebih Berguna
Dengan XML, data dapat digunakan oleh lebih banyak orang karena bersifat
independen dan cross platform shingga data dapat diakses oleh banyak orang dan
tidak tergantung pada standar browser maupun HTML tertentu. Klien dan
aplikasinya dapat mengakses file XML sebagai sumber data seperti mengakses
database

Modul Pemrograman Web
Halaman | 79
XML sebagai induk dari WAP dan WML
Wireless Markup Language digunakan untuk memarkup aplikasi Internet untuk
peralatan mobile semacam telepon selular yang ditulis dalam XML. Semua aplikasi
akan menyimpan datanya dalam XML, sehingga berbagai aplikasi dapat membaca
data masing-masing dalam format teks murni tanpa adanya utiliti untuk konversi.

8.4. Sintaks XML
Sintaks XML sangat sederhana dan sangat terbatas. Aturannya sangat mudah
dipelajari dan sangat mudah digunakan. Karena itu, membuat software yang dapat
membaca dan memanipulasi XML sangat mudah dilakukan
Contoh Dokumen XML
Dokumen XML yang menggambarkan dirinya sendiri dengan sintak sederhana:
<?xm1 ves1on="1.0"?>
<nofe>
<fo>1ove</fo>
<fom>Jan1</fom>
<head1ng>kem1nde</head1ng>
<body>Don`f fogef me fh1s Weekend!</body>
</nofe>

Baris pertama dokumen merupakan deklarasi XML adalah untuk mendefinisikan
versi XML pada dokumen, yaitu versi 1.0. Baris berikutnya menggambarkan
struktur elemen dari dokumen ini

Tentang Struktur XML
Semua elemen XML harus memiliki tag penutup
Dalam XML adalah ilegal tidak memiliki tag penutup
Dalam HTML beberapa elements tidak harus memiliki tag penutup, seperti contoh di
bawah ini:
<p>1h1s 1s a paagaph
<p>1h1s 1s anofhe paagaph

Dalam XML contoh diatas tidak benar dan yang benar adalah seperti dibawah ini :
<p>1h1s 1s a paagaph</p>
<p>1h1s 1s anofhe paagaph</p>

Catatan : Dari contoh sebelumnya deklarasi XML tidak memiliki tag penutup, hal ini
tidak salah. Deklarasi tidak merupakan bagian dari dokumen XML itu sendiri, ini
bukan elemen XML dan tidak harus memiliki tag penutup.

Case sensitive
Hal ini tidak seperti HTML yang case insensitive. Dalam XML , tag <Nofe> berbeda
dari tah <nofe> Jadi tag awal dan akhir harus ditulis dalam case yang sama
<Message>1h1s 1s 1ncoecf</message>
<message>1h1s 1s coecf</message>

Semua elemen XML harus memiliki struktur yang benar
Dalam HTML beberapa element tidak harus memiliki struktur yang urut
(memungkinkan overlapping), seperti di bawah ini
<b><1>1h1s fexf 1s bo1d and 1fa11c</b></1>

Tetapi dalam XML harus memiliki urutan yang benar
<b><1>1h1s fexf 1s bo1d and 1fa11c</1></b>

Modul Pemrograman Web
Halaman | 80

Semua dokumen XML harus memiliki tag akar
Tag pertama dalam dokumen XML adalah tag utama
Elemen dalam XMl dapat memiliki sub elemen
<oof>
<ch11d>
<subch11d>.....</subch11d>
</ch11d>
</oof>

Nilai dari atribut harus diberi tanda petik
Dalam XMl adalah ilegal bila tidak memberi tanda petik pada nilai dari atribut

Bandingkan contoh yang salah dan contoh yang benar berikut ini:
<?xm1 ves1on="1.0"?>
<nofe dafe=12/11/99>
<fo>1ove</fo>
<fom>Jan1</fom>
<head1ng>kem1nde</head1ng>
<body>Don`f fogef me fh1s Weekend!</body>
</nofe>

<?xm1 ves1on="1.0"?>
<nofe dafe="12/11/99">
<fo>1ove</fo>
<fom>Jan1</fom>
<head1ng>kem1nde</head1ng>
<body>Don`f fogef me fh1s Weekend!</body>
</nofe>

*Perhatikan atribut dafe pada tag nofe

Dalam XML, Spasi Kosong Diperhatikan
Dalam XML, spasi dalam dokumen tidak diabaikan
Hal ini tidak seperti HTML yang mengabaikan spasi. Dalam HTML, kalimat seperti
ini:
he11o my name 1s 1ove,
akan ditampilkan seperti ini:
he11o my name 1s 1ove,

Element XML adalah Ekstensibel
Dokumen XML dapat dikembangkan untuk membawa informasi lebih
Perhatikan contoh dokumen XML ini:
<?xm1 ves1on="1.0"?>
<nofe>
<fo>1ove</fo>
<fom>Jan1</fom>
<head1ng>kem1nde</head1ng>
<body>Don`f fogef me fh1s Weekend!</body>
</nofe>
Misalkan kita membuat aplikasi yang mengeluarkan elemen <fo>, <fom>, dan
<body> dari dokumen XML dapat menghasilkan output ini:
ML55AGL 1o: 1ove Iom: Jan1 Don`f fogef me fh1s Weekend!

Elemen-elemen XML memiliki hubungan
Elemen memiliki hubungan semacam orangtua dan anak
Untuk memahami terminologi XML kita harus mengetahui hubungan antara
penamaan elemen XML dan bagaimana isi elemen digambarkan
Misalnya di bawah ini adalah deskripsi dari suatu buku
Modul Pemrograman Web
Halaman | 81
8ook 11f1e: My I1sf XML
Chapfe 1: lnfoducf1on fo XML Whaf 1s h1ML Whaf 1s XML
Chapfe 2: XML 5ynfax L1emenfs musf have a c1os1ng fag
L1emenfs musf be coecf1y nesfed

Dalam XML data buku tersebut dapat dideskripsikan dalam format sebagai berikut:
<book>
<f1f1e>My I1sf XML</f1f1e>
<pod 1d="33-657" med1a="pape"></pod>
<chapfe>lnfoducf1on fo XML
<paa>Whaf 1s h1ML</paa>
<paa>Whaf 1s XML</paa>
</chapfe>
<chapfe>XML 5ynfax
<paa>L1emenfs musf have a c1os1ng fag</paa>
<paa>L1emenfs musf be pope1y nesfed</paa>
</chapfe>
</book>

8ook adalah root element. 11f1e dan chapfe adalah child elements dari book.
8ook adalah parent element dari f1f1e dan chapfe. 11f1e dan chapfe adalah
siblings (atau sister elements) karena mereka mempunyai parent yang sama.


Modul Pemrograman Web
Halaman | 82
LAMPIRAN HTML


1. Symbols HTML
Symbols Used
ukL
URL of an external file (or just file name if in the same directory)
?
Arbitrary number (i.e. <H?> means <H1>, <H2>, <H3>, etc.)
x
Arbitrary percentage (i.e. <HR WIDTH="%"> means <HR WIDTH="50%">,
etc.)
"""
Arbitrary text (i.e. ALT="***" means fill in with text)
$$$$$$
Arbitrary hex (i.e. BGCOLOR="#$$$$$$" means BGCOLOR="#00FF1C", etc.)
:::
Arbitrary date (i.e. DATETIME=":::" means "1994-11-05T08:15:30" etc.)
0
Email address (i.e. "mailto:@" means "mailto:kevin@werbach.com" etc.)
,,,
Comma-delimited (i.e. COORDS=",,," means COORDS="0,0,50,50", etc.)
|
Alternatives (i.e. ALIGN=LEFT|RIGHT|CENTER means pick one of these)

2. Komentar
Tags Used
<!--. . .-->
Untuk komentar
< COMMLN1 >. . .</COMMLN1>
Untuk komentar

3. Structure Tags
Tag Attribute Function
<h1ML>...</h1ML>
Encloses the entire HTML document
<hLAD>...</hLAD>
Encloses the head of the HTML document.
<8ODY>...</8ODY>
Encloses the body (text and tags) of the
HTML document.

BACKGROUND="..." The name or URL of the image to tile on
the page background.

BGCOLOR="..." The color of the page background.

TEXT="..." The color of the page's text.

LINK="..." The color of unfollowed links.

ALINK="..." The color of activated links.

VLINK="..." The color of followed links.

BGPROPERTIES="..."(MS) Properties of background image.
Currently allows only the value FIXED,
which prevents the background image
from scrolling.

TOPMARGIN="..."(MS) Top margin of the page, in pixels.

BOTTOMMARGIN="..."(MS) Bottom margin of the page, in pixels.
<8A5L>
Indicates the full URL of the current
document. This optional tag is used
within <HEAD>.
HREF="..." The full URL of this document.
<l5lNDLX>
Indicates that this document is a gateway
script that allows searches.

PROMPT="..." The prompt for the search field.

ACTION="..." Gateway program to which the search
string should be passed.
<LlNk>
Indicates a link between this document
and some other document. Generally
used only by HTML-generating tools.
<LINK> represents a link from this entire
document to another, as opposed to
<A>, which can create multiple links in
the document. Not commonly used.

HREF="..." The URL of the document to call when the
link is activated.
Modul Pemrograman Web
Halaman | 83

NAME="..." If the document is to be considered an
anchor, the name of that anchor.

REL="..." The relationship between the linked-to
document and the current document; for
example, "TOC" or "Glossary".

REV="..." A reverse relationship between the
current document and the linked-to
document.

URN="..." A Uniform Resource Number (URN), a
unique identifier different from the URL in
HREF.

TITLE="..." The title of the linked-to document.

METHODS="..." The method with which the document is
to be retrieved; for example, FTP,
Gopher, and so on.
<ML1A>
Indicates meta-information about this
document (information about the
document itself); for example, keywords
for search engines, special HTTP headers
to be used for retrieving this document,
expiration dates, and so on. Meta-
information is usually in the form of a
key/value pair. Used in the document
<HEAD>.

HTTP-EQUIV="..." Creates a new HTTP header field with the
same name as the attribute's value; for
example, HTTP-EQUIV="Expires". The
value of that header is specified by the
CONTENT attribute.

NAME="..." If meta-data is usually in the form of
key/value pairs, NAME indicates the key;
for example, Author or ID.

CONTENT="..." The content of the key/value pair (or of
the HTTP header indicated by HTTP-
EQUIV).
<NLX1lD>
Indicates the "next" document to this one
(as might be defined by a tool to manage
HTML documents in series). <NEXTID> is
considered obsolete.

4. Headings dan Title
Tag Attribute Function
<h1>...</h1> A first-level heading.
<h2>...</h2> A second-level heading.
<h3>...</h3> A third-level heading.
<h4>...</h4> A fourth-level heading.
<h5>...</h5> A fifth-level heading.
<h6>...</h6> A sixth-level heading.
<1l1LL>...</1l1LL>
Indicates the title of the document. Used
within <HEAD>.
All heading tags accept the
following attribute
ALlGN="..." Possible values are CENTER, LEFT, and RIGHT.

5. Paragraphs dan Regions
Tag Attribute Function
<P>...</P> A plain paragraph. The closing tag (</P>) is optional.
ALlGN="..." Align text to CENTER, LEFT, or RIGHT.
Modul Pemrograman Web
Halaman | 84
<Dlv>...</Dlv> A region of text to be formatted.
ALlGN="..." Align text to CENTER, LEFT, or RIGHT.

6. Links
Tag Attribute Function
<A>...</A>
With the HREF attribute, creates a link to another document or
anchor; with the NAME attribute, creates an anchor that can be linked
to.
hkLI="..."
The URL of the document to be called when the link is activated.
NAML="..."
The name of the anchor.
kLL="..."
The relationship between the linked-to document and the current
document; for example, "TOC" or "Glossary". REL="..." is not
commonly used.
kLv="..."
A reverse relationship between the current document and the linked-
to document (not commonly used).
ukN="..."
A Uniform Resource Number (URN), a unique identifier different from
the URL in HREF (not commonly used).
1l1LL="..."
The title of the linked-to document (not commonly used).
ML1hOD5="..."
The method with which the document is to be retrieved; for example,
FTP, Gopher, and so on (not commonly used).
1AkGL1="..."
The name of a frame that the linked document should appear in.

7. Lists
Tag Attribute Function
<OL>...</OL>
An ordered (numbered) list.
1YPL="..."
The type of numerals to label the list. Possible values are A, a, I,
i, and 1.
51Ak1="..."
The value with which to start this list.
<uL>...</uL>
An unordered (bulleted) list.
1YPL="..."
The bullet dingbat to use to mark list items. Possible values are
DISC, CIRCLE (or ROUND), and SQUARE.
<MLNu>...</MLNu>
A menu list of items.
<Dlk>...</Dlk>
A directory listing; items are generally smaller than 20
characters.
<Ll>
A list item for use with <OL>, <UL>, <MENU>, or <DIR>.
1YPL="..."
The type of bullet or number to label this item with. Possible
values are DISC, CIRCLE (or ROUND) SQUARE, A, a, I, i, and 1.
vALuL="..."
The numeric value this list item should have (affects this item
and all below it in <OL> lists).
<DL>...</DL>
A definition or glossary list.
COMPAC1
The COMPACT attribute specifies a formatting that takes less
whitespace to present.
<D1>
A definition term, as part of a definition list.
<DD>
The corresponding definition to a definition term, as part of a
definition list.

8. Character Formatting
Tag Attribute Function
<LM>...</LM>
Emphasis (usually italic).
<51kONG>...</51kONG>
Stronger emphasis (usually bold).
<CODL>...</CODL>
Code sample (usually Courier).
<k8D>...</k8D>
Text to be typed (usually Courier).
<vAk>...</vAk>
A variable or placeholder for some other value.
Modul Pemrograman Web
Halaman | 85
<5AMP>...</5AMP>
Sample text (not commonly used).
<DIN>...</DIN>
A definition of a term.
<Cl1L>...</Cl1L>
A citation.
<8>...</8>
Boldface text.
<l>...</l>
Italic text.
<11>...</11>
Typewriter (monospaced) font.
<PkL>...</PkL>
Preformatted text (exact line endings and spacing will be
preserved--usually rendered in a monospaced font).
<8lG>...</8lG>
Text is slightly larger than normal.
<5MALL>...</5MALL>
Text is slightly smaller than normal.
<5u8>...</5u8>
Subscript.
<5uP>...</5uP>
Superscript.
<51klkL>...</51klkL>
Puts a strikethrough line in text.

9. Other Elements
Tag Attribute Function
<hk>
A horizontal rule line.
5lZL="..."
The thickness of the rule, in pixels.
WlD1h="..."
The width of the rule, in pixels or as a percentage of
the document width.
ALlGN="..."
How the rule line will be aligned on the page. Possible
values are LEFT, RIGHT, and CENTER.
NO5hADL
Causes the rule line to be drawn as a solid line instead
of a transparent bevel.
COLOk="..."
{M5}
Color of the horizontal rule.
<8k>
A line break.
CLLAk="..."
Causes the text to stop flowing around any images.
Possible values are RIGHT, LEFT, and ALL.
<NO8k>...</NO8k>
Causes the enclosed text not to wrap at the edge of
the page.
<W8k>
Wraps the text at this point only if necessary.
<8LOCkquO1L>...
</8LOCkquO1L>

Used for long quotes or citations.
<ADDkL55>...</ADDkL55>
Used for signatures or general information about a
document's author.
<CLN1Lk>...</CLN1Lk>
Centers text or images.
<8LlNk>...</8LlNk>
Causes the enclosed text to blink in an irritating
manner.
<ION1>...</ION1>
Changes the size of the font for the enclosed text.
5lZL="..."
The size of the font, from 1 to 7. Default is 3. Can also
be specified as a value relative to the current size; for
example, +2.
COLOk="..."
Changes the color of the text.
IACL="..."
Name of font to use if it can be found on the user's
system. Multiple font names can be separated by
commas, and the first font on the list that can be
found will be used.
<8A5LION1>
Sets the default size of the font for the current page.
5lZL="..."
The default size of the font, from 1 to 7. Default is 3.

Modul Pemrograman Web
Halaman | 86

10. Images, Sounds, dan Embedded Media
Tag Attribute Function
<lMG>
Inserts an inline image into the document.
l5MAP
This image is a clickable image map.
5kC="..."
The URL of the image.
AL1="..."
A text string that will be displayed in browsers that
cannot support images.
ALlGN="..."
Determines the alignment of the given image. If LEFT
or RIGHT, the image is aligned to the left or right
column, and all following text flows beside that image.
All other values such as TOP, MIDDLE, and BOTTOM,
or the Netscape-only TEXTTOP, ABSMIDDLE,
BASELINE, and ABSBOTTOM determine the vertical
alignment of this image with other items in the same
line.
v5PACL="..."
The space between the image and the text above or
below it.
h5PACL="..."
The space between the image and the text to its left
or right.
WlD1h="..."
The width, in pixels, of the image. If WIDTH is not the
actual width, the image is scaled to fit.
hLlGh1="..."
The height, in pixels, of the image. If HEIGHT is not
the actual height, the image is scaled to fit.
8OkDLk="..."
Draws a border of the specified value in pixels to be
drawn around the image. In the case of images that
are also links, BORDER changes the size of the default
link border.
LOW5kC="..."
The path or URL of an image that will be loaded first,
before the image specified in SRC. The value of
LOWSRC is usually a smaller or lower resolution
version of the actual image.
u5LMAP="..."
The name of an image map specification for client-side
image mapping. Used with <MAP> and <AREA>.
DYN5kC="..."
{M5}
The address of a video clip or VRML world (dynamic
source).
CON1kOL5 {M5}
Used with DYNSRC to display a set of playback
controls for inline video.
LOOP="..."
{M5}
The number of times a video clip will loop. (-1, or
INFINITE, means to loop indefinitely.)
51Ak1="..."
{M5}
When a DYNSRC video clip should start playing. Valid
options are FILEOPEN (play when page is displayed)
or MOUSEOVER (play when mouse cursor passes over
the video clip.
<8G5OuND> {M5}
Plays a sound file as soon as the page is displayed.
5kC="..."
The URL of the WAV, AU, or MIDI sound file to embed.
LOOP="..."
{M5}
The number of times a video clip will loop. (-1, or
INFINITE, means to loop indefinitely.)
<5CklP1>
An interpreted script program.
LANGuAGL="..."
Currently only JAVASCRIPT is supported by Netscape.
Both JAVASCRIPT and VBSCRIPT are supported by
Microsoft.
5kC="..."
Specifies the URL of a file that includes the script
program.
<O8JLC1>
Inserts an image, video, Java applet, or ActiveX
control into a document.
<APPLL1>
Inserts a self-running Java applet.
Modul Pemrograman Web
Halaman | 87
CLA55="..."
The name of the applet.
5kC="..."
The URL of the directory where the compiled applet
can be found (should end in a slash / as in
http://mysite/myapplets/). Do not include the actual
applet name, which is specified with the CLASS
attribute.
ALlGN="..."
Indicates how the applet should be aligned with any
text that follows it. Current values are TOP, MIDDLE,
and BOTTOM.
WlD1h="..."
The width of the applet output area, in pixels.
hLlGh1="..."
The height of the applet output area, in pixels.
<PAkAM>
Program-specific parameters. (Always occurs within
<APPLET> or <OBJECT> tags.)
NAML="..."
The type of information being given to the applet or
ActiveX control.
vALuL="..."
The actual information to be given to the applet or
ActiveX control.
kLI="..."
Indicates that this <PARAM> tag includes the address
or location of the object.
<LM8LD>
Embeds a file to be read or (Netscape only!) displayed
by a plug-in application.
5kC="..."
The URL of the file to embed.
WlD1h="..."
The width of the embedded object in pixels.
hLlGh1="..."
The height of the embedded object in pixels.
ALlGN="..."
Determines the alignment of the media window.
Values are the same as for the <IMG> tag.
v5PACL="..."
The space between the media and the text above or
below it.
h5PACL="..."
The space between the media and the text to its left
or right.
8OkDLk="..."
Draws a border of the specified size in pixels to be
drawn around the media.
<NOLM8LD>...</NOLM8LD>
Alternate text or images to be shown to users who do
not have a plug-in installed.
<MAP>...</MAP>
A client-side image map, referenced by <IMG
USEMAP="...">. Includes one or more <AREA> tags.
<AkLA>
Defines a clickable link within a client-side image map.
5hAPL="..."
The shape of the clickable area. Currently, only RECT
is supported.
COOkD5="..."
The left, top, right, and bottom coordinates of the
clickable region within an image.
hkLI="..."
The URL that should be loaded when the area is
clicked.
NOhkLI
Indicates that no action should be taken when this
area of the image is clicked.


Modul Pemrograman Web
Halaman | 88

11. Forms
Tag Attribute Function
<IOkM>...</IOkM>
Indicates an input form.
AC1lON="..."
The URL of the script to process this form input.
ML1hOD="..."
How the form input will be sent to the gateway on
the server side. Possible values are GET and POST.
LNC1YPL="..."
Normally has the value application/x-www-form-
urlencoded. For file uploads, use multipart/form-
data.
NAML="..."
A name by which JavaScript scripts can refer to the
form.
<lNPu1>
An input element for a form.
1YPL="..."
The type for this input widget. Possible values are
CHECKBOX, HIDDEN, RADIO, RESET, SUBMIT,
TEXT, SEND FILE, or IMAGE.
NAML="..."
The name of this item, as passed to the gateway
script as part of a name/value pair.
vALuL="..."
For a text or hidden widget, the default value; for
a check box or radio button, the value to be
submitted with the form; for Reset or Submit
buttons, the label for the button itself.
5kC="..."
The source file for an image.
ChLCkLD
For check boxes and radio buttons, indicates that
the widget is checked.
5lZL="..."
The size, in characters, of a text widget.
MAXLLNG1h="..."
The maximum number of characters that can be
entered into a text widget.
ALlGN="..."
For images in forms, determines how the text and
image will align (same as with the <IMG> tag).
<1LX1AkLA>...</1LX1AkLA>
Indicates a multi-line text entry form element.
Default text can be included.
NAML="..."
The name to be passed to the gateway script as
part of the name/value pair.
kOW5="..."
The number of rows this text area displays.
COL5="..."
The number of columns (characters) this text area
displays.
WkAP="..."
Controls text wrapping. Possible values are OFF,
VIRTUAL, and PHYSICAL.
<5LLLC1>...</5LLLC1>
Creates a menu or scrolling list of possible items.
NAML="..."
The name that is passed to the gateway script as
part of the name/value pair.
5lZL="..."
The number of elements to display. If SIZE is
indicated, the selection becomes a scrolling list. If
no SIZE is given, the selection is a pop-up menu.
MuL1lPLL
Allows multiple selections from the list.
<OP1lON>
Indicates a possible item within a <SELECT>
element.
5LLLC1LD
With this attribute included, the <OPTION> will be
selected by default in the list.
vALuL="..."
The value to submit if this <OPTION> is selected
when the form is submitted.

Modul Pemrograman Web
Halaman | 89

12. Tables
Tag Attribute Function
<1A8LL>...</1A8LL>
Creates a table that can contain a
caption (<CAPTION>) and any number
of rows (<TR>).
8OkDLk="..."
Indicates whether the table should be
drawn with or without a border. In
Netscape, BORDER can also have a
value indicating the width of the border.
CLLL5PAClNG="..."
The amount of space between the cells
in the table.
CLLLPADDlNG="..."
The amount of space between the edges
of the cell and its contents.
WlD1h="..."
The width of the table on the page, in
either exact pixel values or as a
percentage of page width.
ALlGN="..." {M5}
Alignment (works like IMG ALIGN).
Values are LEFT or RIGHT.
8GCOLOk="..."
Background color of all cells in the table
that do not contain their own
BACKGROUND or BGCOLOR attribute.
8ACkGkOuND="..." {M5}
Background image to tile within all cells
in the table that do not contain their
own BACKGROUND or BGCOLOR
attribute.
8OkDLkCOLOk="..." {M5}
Border color (used with BORDER="...").
8OkDLkCOLOkLlGh1="..."
{M5}
Color for light part of 3D-look borders
(used with BORDER="...").
8OkDLkCOLOkDAkk="..." {M5}
Color for dark part of 3D-look borders
(used with BORDER="...").
vALlGN="..." {M5}
Alignment of text within the table.
Values are TOP and BOTTOM.
IkAML="..." {M5}
Controls which external borders will
appear around a table. Values are void
(no frames), above (top border only),
below (bottom border only), hsides (top
and bottom), lhs (left hand side), rhs
(right hand side), vsides (left and right
sides), and box (all sides).
kuLL5="..." {M5}
Controls which internal borders appear
in the table. Values are none, basic
(rules between THEAD, TBODY, and
TFOOT only), rows (horizontal borders
only), cols (vertical borders only), and
all.
<CAP1lON>...</CAP1lON>
The caption for the table.
ALlGN="..."
The position of the caption. Possible
values are TOP and BOTTOM.
<1k>...</1k>
Defines a table row, containing headings
and data (<TR> and <TH> tags).
ALlGN="..."
The horizontal alignment of the contents
of the cells within this row. Possible
values are LEFT, RIGHT, and CENTER.
vALlGN="..."
The vertical alignment of the contents of
the cells within this row. Possible values
are TOP, MIDDLE, BOTTOM, and
BASELINE.
Modul Pemrograman Web
Halaman | 90
8GCOLOk="..."
Background color of all cells in the row
that do not contain their own
BACKGROUND or BGCOLOR attributes.
8ACkGkOuND="..."{M5}
Background image to tile within all cells
in the row that do not contain their own
BACKGROUND or BGCOLOR attributes.
8OkDLkCOLOk="..."{M5}
Border color (used with BORDER="...").
8OkDLkCOLOkLlGh1="..."{M5}
Color for light part of 3D-look borders
(used with BORDER="...").
8OkDLkCOLOkDAkk="..."{M5}
Color for dark part of 3D-look borders
(used with BORDER="...").
<1h>...</1h>
Defines a table heading cell.
ALlGN="..."
The horizontal alignment of the contents
of the cell. Possible values are LEFT,
RIGHT, and CENTER.
vALlGN="..."
The vertical alignment of the contents of
the cell. Possible values are TOP,
MIDDLE, BOTTOM, and BASELINE.
kOW5PAN="..."
The number of rows this cell will span.
COL5PAN="..."
The number of columns this cell will
span.
NOWkAP
Does not automatically wrap the
contents of this cell.
WlD1h="..."
The width of this column of cells, in
exact pixel values or as a percentage of
the table width.
8GCOLOk="..."
Background color of the cell.
8ACkGkOuND="..." {M5}
Background image to tile within the cell.
8OkDLkCOLOk="..." {M5}
Border color (used with BORDER="...").
8OkDLkCOLOkLlGh1="..."
{M5}
Color for light part of 3D-look borders
(used with BORDER="...").
8OkDLkCOLOkDAkk="..." {M5}
Color for dark part of 3D-look borders
(used with BORDER="...").
<1D>...</1D>
Defines a table data cell.
ALlGN="..."
The horizontal alignment of the contents
of the cell. Possible values are LEFT,
RIGHT, and CENTER.
vALlGN="..."
The vertical alignment of the contents of
the cell. Possible values are TOP,
MIDDLE, BOTTOM, and BASELINE.
kOW5PAN="..."
The number of rows this cell will span.
COL5PAN="..."
The number of columns this cell will
span.
NOWkAP
Does not automatically wrap the
contents of this cell.
WlD1h="..."
The width of this column of cells, in
exact pixel values or as a percentage of
the table width.
8GCOLOk="..."
Background color of the cell.
8ACkGkOuND="..." {M5}
Background image to tile within the cell.
8OkDLkCOLOk="..." {M5}
Border color (used with BORDER="...").
8OkDLkCOLOkLlGh1="..."
{M5}
Color for light part of 3D-look borders
(used with BORDER="...").
8OkDLkCOLOkDAkk="..." {M5}
Color for dark part of 3D-look borders
Modul Pemrograman Web
Halaman | 91
(used with BORDER="...").

13. Frames
Tag Attribute Function
<IkAML5L1>...</IkAML5L1>
Divides the main window into a set of frames
that can each display a separate document.
kOW5="..."
Splits the window or frameset vertically into a
number of rows specified by a number (such
as 7), a percentage of the total window width
(such as 25%), or as an asterisk (*) indicating
that a frame should take up all the remaining
space or divide the space evenly between
frames (if multiple * frames are specified).
COL5="..."
Works similar to ROWS, except that the
window or frameset is split horizontally into
columns.
8OkDLk="..."
Size of frame border in pixels (0 turns off
borders). This tag is Netscape-specific--
Microsoft IE uses FRAMEBORDER and
FRAMESPACING instead.
IkAML8OkDLk="..."
{M5}
Specifies whether to display a border for a
frame. Options are YES and NO.
IkAML5PAClNG="..."
{M5}
Space between frames, in pixels.
<IkAML>
Defines a single frame within a <FRAMESET>.
5kC="..."
The URL of the document to be displayed in
this frame.
NAML="..."
A name to be used for targeting this frame
with the TARGET attribute in <A HREF> links.
MAkGlNWlD1h="..."
The amount of space to leave to the left and
right side of a document within a frame, in
pixels.
MAkGlNhLlGh1="..."
The amount of space to leave above and below
a document within a frame, in pixels.
5CkOLLlNG="..."
Determines whether a frame has scrollbars.
Possible values are YES, NO, and AUTO.
NOkL5lZL
Prevents the user from resizing this frame (and
possibly adjacent frames) with the mouse.
<NOIkAML>...</NOIkAML>
Provides an alternative document body in
<FRAMESET> documents for browsers that do
not support frames (usually encloses
<BODY>...</BODY>).

14. Character Entities
Character Entities contains the possible numeric and character entities for the ISO-Latin-1
(ISO8859-1) character set. Where possible, the character is shown.
Just a Minute: Not all browsers can display all characters, and some browsers might even display
characters different from those that appear in the table. Newer browsers seem to have a better
track record for handling character entities, but be sure to test your HTML files extensively with
multiple browsers if you intend to use these entities.

Chaacfe Chaacfe Chaacfe Chaacfe Nume1c Lnf1fy Nume1c Lnf1fy Nume1c Lnf1fy Nume1c Lnf1fy Chaacfe Lnf1fy Chaacfe Lnf1fy Chaacfe Lnf1fy Chaacfe Lnf1fy
{1f any} {1f any} {1f any} {1f any}
Desc1pf1on Desc1pf1on Desc1pf1on Desc1pf1on
&#00-&#08 unused
&#09 ho1zonfa1 fab
&#10 L1ne feed
&#11-&#31 unused
&#32 5pace
Modul Pemrograman Web
Halaman | 92
! &#33 Lxc1amaf1on mak
" &#34 &quof quofaf1on mak
# &#35 Numbe s1gn
$ &#36 Do11a s1gn
x &#37 Pecenf s1gn
& &#38 &amp Ampesand
&#39 Aposfophe
{ &#40 Leff paenfhes1s
} &#41 k1ghf paenfhes1s
" &#42 Asfe1sk
+ &#43 P1us s1gn
, &#44 Comma
- &#45 hyphen
. &#46 Pe1od {fu11sfop}
/ &#47 5o11dus {s1ash}
0-9 &#48-&#57 D1g1fs 0-9
: &#58 Co1on
&#59 5em1co1on
< &#60 &1f Less fhan
= &#61 Lqua1 s1gn
> &#62 &gf Geafe fhan
? &#63 quesf1on mak
0 &#64 Commec1a1 "af"
A-Z &#65-&#90 Leffes A-Z
| &#91 Leff squae backef
\ &#92 kevese so11dus {backs1ash}
] &#93 k1ghf squae backef
^ &#94 Caef
-- &#95 ho1zonfa1 ba
` &#96 Gave accenf
a-z &#97-&#122 Leffes a-z
{ &#123 Leff cu1y bace
| &#124 vef1ca1 ba
} &#125 k1ghf cu1y bace
~ &#126 111de
&#127-&#160 unused
|exc1amdoWn
]
&#161 &1exc1 lnvefed exc1amaf1on
cenfs &#162 &cenf Cenf s1gn
|sfe11ng] &#163 &pound Pound sfe11ng
|cuency] &#164 &cuen Genea1 cuency s1gn
|yen] &#165 &yen Yen s1gn
| &#166 &bvba o
bkba
8oken vef1ca1 ba
55 &#167 &secf 5ecf1on s1gn
|d1ees1s] &#168 &um1 um1auf {d1ees1s}
" &#169 &copy {Nefscape
on1y}
Copy1ghf
&#170 &odf Iem1n1ne od1na1
< &#171 &1aquo Leff ang1e quofe, gu111emof
1eff
~ &#172 &nof Nof s1gn
- &#173 &shy 5off hyphen
&#174 &eg {Nefscape
on1y}
keg1sfeed fademak
Modul Pemrograman Web
Halaman | 93
- &#175 &h1ba Macon accenf
deg. &#176 &deg Degee s1gn
+/- &#177 &p1usmn P1us o m1nus
2
&#178 &sup2 5upesc1pf fWo
3
&#179 &sup3 5upesc1pf fhee
` &#180 &acufe Acufe accenf
u &#181 &m1co M1co s1gn
|P &#182 &paa Paagaph s1gn
. &#183 &m1ddof M1dd1e dof
|ced111a] &#184 &ced11 Ced111a
1
&#185 &sup1 5upesc1pf one
&#186 &odm Mascu11ne od1na1
> &#187 &aquo k1ghf ang1e quofe, gu111emof
1ghf
1
/4 &#188 &fac14 Iacf1on one-foufh
1
/2 &#189 &fac12 Iacf1on one-ha1f
3
/4 &#190 &fac34 Iacf1on fhee-foufhs
&#191 &1quesf lnvefed quesf1on mak
A &#192 &Agave Cap1fa1 A, gave accenf
&#193 &Aacufe Cap1fa1 A, acufe accenf
&#194 &Ac1c Cap1fa1 A, c1cumf1ex accenf
|Af11de] &#195 &Af11de Cap1fa1 A, f11de
A &#196 &Aum1 Cap1fa1 A, d1ees1s o um1auf
mak
A &#197 &A1ng Cap1fa1 A, 1ng
4 &#198 &AL11g Cap1fa1 AL d1phfhong {11gafue}
&#199 &Cced11 Cap1fa1 C, ced111a
L &#200 &Lgave Cap1fa1 L, gave accenf
L &#201 &Lacufe Cap1fa1 L, acufe accenf
L &#202 &Lc1c Cap1fa1 L, c1cumf1ex accenf
L &#203 &Lum1 Cap1fa1 L, d1ees1s o um1auf
mak
l &#204 &lgave Cap1fa1 l, gave accenf
l &#205 &lacufe Cap1fa1 l, acufe accenf
l &#206 &lc1c Cap1fa1 l, c1cumf1ex accenf
l &#207 &lum1 Cap1fa1 l, d1ees1s o um1auf
mak
q &#208 &L1h Cap1fa1 Lfh, lce1and1c
&#209 &Nf11de Cap1fa1 N, f11de
O &#210 &Ogave Cap1fa1 O, gave accenf
&#211 &Oacufe Cap1fa1 O, acufe accenf
&#212 &Oc1c Cap1fa1 O, c1cumf1ex accenf
|Of11de] &#213 &Of11de Cap1fa1 O, f11de
O &#214 &Oum1 Cap1fa1 O, d1ees1s o um1auf
mak
x &#215 Mu1f1p1y s1gn
o &#216 &Os1ash Cap1fa1 O, s1ash
u &#217 &ugave Cap1fa1 u, gave accenf
u &#218 &uacufe Cap1fa1 u, acufe accenf
&#219 &uc1c Cap1fa1 u, c1cumf1ex accenf
u &#220 &uum1 Cap1fa1 u, d1ees1s o um1auf
mak
`Y &#221 &Yacufe Cap1fa1 Y, acufe accenf
f &#222 &1hOkN Cap1fa1 1hOkN, lce1and1c
&#223 &sz11g 5ma11 shap s, Geman {sz
11gafue}
Modul Pemrograman Web
Halaman | 94
a &#224 &agave 5ma11 a, gave accenf
&#225 &aacufe 5ma11 a, acufe accenf
&#226 &ac1c 5ma11 a, c1cumf1ex accenf
&#227 &af11de 5ma11 a, f11de
&#228 &aaum1 5ma11 a, d1ees1s o um1auf
mak
a &#229 &a1ng 5ma11 a, 1ng
&#230 &ae11g 5ma11 ae d1phfhong {11gafue}
&#231 &cced11 5ma11 c, ced111a
&#232 &egave 5ma11 e, gave accenf
&#233 &eacufe 5ma11 e, acufe accenf
&#234 &ec1c 5ma11 e, c1cumf1ex accenf
&#235 &eum1 5ma11 e, d1ees1s o um1auf
mak
1 &#236 &1gave 5ma11 1, gave accenf
1 &#237 &1acufe 5ma11 1, acufe accenf
T &#238 &1c1c 5ma11 1, c1cumf1ex accenf
T &#239 &1um1 5ma11 1, d1ees1s o um1auf
mak
u &#240 &efh 5ma11 efh, lce1and1c
&#241 &nf11de 5ma11 n, f11de
&#242 &ogave 5ma11 o, gave accenf
&#243 &oacufe 5ma11 o, acufe accenf
&#244 &oc1c 5ma11 o, c1cumf1ex accenf
&#245 &of11de 5ma11 o, f11de
&#246 &oum1 5ma11 o, d1ees1s o um1auf
mak
/ &#247 D1v1s1on s1gn
&#248 &os1ash 5ma11 o, s1ash
&#249 &ugave 5ma11 u, gave accenf
&#250 &uacufe 5ma11 u, acufe accenf
&#251 &uc1c 5ma11 u, c1cumf1ex accenf
&#252 &uum1 5ma11 u, d1ees1s o um1auf
mak
`y &#253 &yacufe 5ma11 y, acufe accenf
W &#254 &fhon 5ma11 fhon, lce1and1c
&#255 &yum1 5ma11 y, d1ees1s o um1auf
mak

You might also like