web lab
web lab
web lab
PRG1
1. Develop the HTML page named as “Myfirstwebpage.html”. Add the following tags
with relevant content. Set the title of the page as “My First Web Page” Within the
body use the following tags:
a) Moving text = “Basic HTML Tags”
b) Different heading tags (h1 to h6)
c) Paragraph
d) Horizontal line
e) Line Break
f) Block Quote
g) Pre tag
h) Different Logical Style (, , etc..)
<!DOCTYPE html>
<head>
</head>
<body>
<marquee>Welcome to vtucode</marquee>
<h1>This is an H1 heading</h1>
<h2>This is an H2 heading</h2>
<h3>This is an H3 heading</h3>
<h4>This is an H4 heading</h4>
<h5>This is an H5 heading</h5>
<h6>This is an H6 heading</h6>
<hr>
KNSIT 1
Web Technology Lab BCSL504
<p>This is a line of text before the break.<br>This is a line of text after the break.</p>
<blockquote>
</blockquote>
<pre>
</pre>
</body>
</html>
KNSIT 2
Web Technology Lab BCSL504
PRG2
2. Develop the HTML page named as “Table.html” to display your class time table.
a) Provide the title as Time Table with table header and table footer, row-span and
col-span etc.
b) Provide various colour options to the cells (Highlight the lab hours and elective
hours with different colors.)
c) Provide colour options for rows.
<!DOCTYPE html>
<head>
<style>
body {
table {
width: 80%;
border-collapse: collapse;
th,
td {
padding: 8px;
text-align: center;
th {
background-color: #f4f4f4;
color: #333;
KNSIT 3
Web Technology Lab BCSL504
tr:nth-child(even) {
background-color: #f9f9f9;
tr:nth-child(odd) {
background-color: #e6f7ff;
.lab-hour {
background-color: #ffcccc;
.elective-hour {
background-color: #ccffcc;
.highlight {
font-weight: bold;
color: #d63384;
tfoot {
background-color: #e0e0e0;
font-weight: bold;
</style>
</head>
<body>
<table>
<thead>
<tr>
KNSIT 4
Web Technology Lab BCSL504
<th>Day/Time</th>
<th>9:00 - 10:00</th>
<th>10:00 - 11:00</th>
<th>11:00 - 12:00</th>
<th>12:00 - 1:00</th>
<th>Lunch Break</th>
<th>2:00 - 3:00</th>
<th>3:00 - 4:00</th>
</tr>
</thead>
<tbody>
<tr>
<td>Monday</td>
<td>Math</td>
<td>English</td>
<td>Elective</td>
<td class="elective-hour">Elective</td>
<td>History</td>
</tr>
<tr>
<td>Tuesday</td>
<td class="elective-hour">Elective</td>
<td>Biology</td>
<td>Math</td>
<td>Geography</td>
KNSIT 5
Web Technology Lab BCSL504
<td>PE</td>
</tr>
<tr>
<td>Wednesday</td>
<td>History</td>
<td>English</td>
<td>Math</td>
<td>Physics</td>
<td class="elective-hour">Elective</td>
</tr>
<tr>
<td>Thursday</td>
<td>PE</td>
<td>History</td>
<td>Geography</td>
<td class="elective-hour">Elective</td>
<td>Biology</td>
<td>Math</td>
</tr>
<tr>
<td>Friday</td>
<td>Math</td>
<td>English</td>
<td>Physics</td>
<td class="elective-hour">Elective</td>
<td>Chemistry</td>
KNSIT 6
Web Technology Lab BCSL504
</tr>
</tbody>
<tfoot>
<tr>
</tr>
</tfoot>
</table>
</body>
</html>
PRG3
3. Develop an external style sheet named as “style.css” and provide different styles
for h2, h3, hr, p, div, span, time, img & a tags. Apply different CSS selectors for tags
and demonstrate the significance of each.
<!DOCTYPE html>
<head>
<title>Styled HTML Page | vtucode</title>
<link rel="stylesheet" href="style.css">
</head>
<body>
<h2>Main Heading</h2>
<h3>Subheading</h3>
<hr>
<p>This is a paragraph demonstrating the basic text styling applied by CSS.</p>
<div>
KNSIT 7
Web Technology Lab BCSL504
PRG4:
4. Develop HTML page named as “registration.html” having variety of HTML input
elements with background colors, table for alignment & provide font colors & size
using CSS styles.
<!DOCTYPE html>
<head>
KNSIT 8
Web Technology Lab BCSL504
<style>
body {
background-color: #f0f4f8;
margin: 0;
padding: 20px;
display: flex;
justify-content: center;
align-items: center;
min-height: 100vh;
.container {
width: 100%;
max-width: 600px;
background-color: #fff;
padding: 20px;
border-radius: 8px;
display: flex;
flex-direction: column;
gap: 20px;
h2 {
text-align: center;
color: #333;
margin: 0;
.form-group {
KNSIT 9
Web Technology Lab BCSL504
display: flex;
flex-direction: column;
gap: 5px;
margin-bottom: 10px;
label {
font-size: 14px;
color: #555;
input[type="text"],
input[type="email"],
input[type="password"],
input[type="date"],
select,
textarea {
padding: 10px;
border-radius: 4px;
font-size: 14px;
.gender-options {
display: flex;
gap: 10px;
align-items: center;
input[type="submit"],
input[type="reset"] {
KNSIT 10
Web Technology Lab BCSL504
border: none;
border-radius: 4px;
cursor: pointer;
font-size: 16px;
flex: 1;
.button-group {
display: flex;
gap: 10px;
justify-content: center;
input[type="submit"] {
background-color: #4CAF50;
color: white;
input[type="reset"] {
background-color: #f44336;
color: white;
.form-group textarea {
margin-bottom: 10px;
</style>
</head>
<body>
<div class="container">
<h2>Registration Form</h2>
KNSIT 11
Web Technology Lab BCSL504
<div class="form-group">
</div>
<div class="form-group">
</div>
<div class="form-group">
<label for="email">Email:</label>
</div>
<div class="form-group">
<label for="password">Password:</label>
</div>
<div class="form-group">
</div>
<div class="form-group">
<label>Gender:</label>
<div class="gender-options">
<label for="male">Male</label>
<label for="female">Female</label>
</div>
KNSIT 12
Web Technology Lab BCSL504
</div>
<div class="form-group">
<label for="country">Country:</label>
<option value="usa">USA</option>
<option value="canada">Canada</option>
<option value="uk">UK</option>
<option value="india">India</option>
</select>
</div>
<div class="form-group">
<label for="bio">Bio:</label>
</div>
<div class="button-group">
</div>
</form>
</div>
</body>
</html>
PRG5:
5. Develop HTML page named as “newpaper.html” having variety of HTML semantic
elements with background colors, text-colors & size for figure, table, aside, section,
article, header, footer… etc.
<!DOCTYPE html>
<head>
KNSIT 13
Web Technology Lab BCSL504
<style>
*{
margin: 0;
padding: 0;
box-sizing: border-box;
body {
padding: 20px;
color: #000000;
display: flex;
flex-direction: column;
min-height: 100vh;
header {
margin-bottom: 30px;
border-radius: 10px;
align-items: center;
background-color: #7b38f7;
color: #fff;
padding: 20px;
display: flex;
justify-content: space-between;
text-align: center;
header a {
KNSIT 14
Web Technology Lab BCSL504
font-size: 25px;
font-weight: 600;
color: #fff;
text-decoration: none;
nav {
display: flex;
gap: 20px;
color: #fff;
text-align: center;
nav a {
font-size: 18px;
color: #fff;
text-decoration: none;
font-weight: bold;
nav a:hover {
text-decoration: underline;
.content {
display: flex;
justify-content: space-between;
flex: 1;
margin: auto;
padding: 20px 0;
gap: 20px;
KNSIT 15
Web Technology Lab BCSL504
position: relative;
.main-content {
cursor: pointer;
flex: 1;
display: grid;
gap: 20px;
background-color: #fff;
border-radius: 12px;
padding: 25px;
box-shadow: rgba(9, 30, 66, 0.25) 0px 1px 1px, rgba(9, 30, 66, 0.13) 0px 0px 1px 1px;
aside {
padding: 20px;
width: 350px;
border-radius: 8px;
position: -webkit-sticky;
position: sticky;
top: 20px;
color: #333;
right: 0;
margin-left: 20px;
.related-news h3 {
text-align: center;
KNSIT 16
Web Technology Lab BCSL504
border-radius: 7px;
padding: 8px;
background: #000;
color: #ffffff;
font-size: 1.4em;
margin-bottom: 15px;
.related-news ul {
list-style: outside;
padding: 7px;
margin: 0;
.related-news li {
margin-bottom: 12px;
.related-news a {
text-decoration: none;
color: #7b38f7;
font-weight: bold;
.related-news a:hover {
text-decoration: underline;
footer {
border-radius: 10px;
background-color: #7b38f7;
KNSIT 17
Web Technology Lab BCSL504
color: #fff;
padding: 20px;
font-weight: 500;
text-align: center;
margin-top: auto;
font-size: 18px;
article {
background-color: #fff;
padding: 15px;
box-shadow: rgba(9, 30, 66, 0.25) 0px 1px 1px, rgba(9, 30, 66, 0.13) 0px 0px 1px 1px;
border-radius: 7px;
color: #000000;
figure {
background-color: #fafafa;
padding: 10px;
border-radius: 8px;
text-align: center;
margin: 0;
figcaption {
font-size: 0.9em;
color: #666;
img {
KNSIT 18
Web Technology Lab BCSL504
max-width: 100%;
height: auto;
border-radius: 8px;
section {
padding: 20px;
width: 100%;
background-color: #fff;
border-radius: 8px;
box-shadow: rgba(9, 30, 66, 0.25) 0px 1px 1px, rgba(9, 30, 66, 0.13) 0px 0px 1px 1px;
section h2 {
color: #fff;
background: #000;
font-size: 24px;
border-radius: 10px;
text-align: center;
padding: 10px;
margin-bottom: 30px;
table {
width: 100%;
border-collapse: collapse;
caption {
font-size: 18px;
margin-bottom: 10px;
color: #555;
KNSIT 19
Web Technology Lab BCSL504
thead {
background-color: #007BFF;
color: #fff;
th,
td {
padding: 12px;
text-align: left;
th {
font-weight: bold;
tbody tr:nth-child(even) {
background-color: #f9f9f9;
tbody tr:hover {
background-color: #eaeaea;
th,
td {
padding: 8px;
font-size: 14px;
caption {
background-color: #d9d9d9;
KNSIT 20
Web Technology Lab BCSL504
padding: 10px;
font-weight: bold;
font-size: 1.1em;
color: #333;
section {
margin-top: 40px;
margin-bottom: 50px;
article h2 {
color: #7b38f7;
font-size: 1.3em;
margin-bottom: 12px;
article p {
text-align: left;
line-height: 1.2;
margin-top: 10px;
article:hover {
background-color: #e7ddfb;
.content {
flex-direction: column;
padding: 10px;
KNSIT 21
Web Technology Lab BCSL504
aside {
width: 100%;
margin-top: 20px;
position: static;
margin-left: 0;
.main-content {
grid-template-columns: 1fr;
</style>
</head>
<body>
<header>
<a href="#">Newspaper</a>
<nav>
<a href="#">Home</a>
<a href="#">About</a>
<a href="#">Contact</a>
<a href="#">Services</a>
<a href="#">Marketing</a>
<a href="#">Updates</a>
</nav>
</header>
<div class="content">
<main class="main-content">
<article>
KNSIT 22
Web Technology Lab BCSL504
<figure>
<figcaption>Image Caption</figcaption>
</figure>
<p>This is the content of the first article. Lorem ipsum dolor sit amet, consectetur adipiscing
elit.
</article>
<article>
<figure>
<figcaption>Image Caption</figcaption>
</figure>
<p>This is the content of the second article. Lorem ipsum dolor sit amet, consectetur adipiscing
elit.
</article>
<article>
<figure>
<figcaption>Image Caption</figcaption>
</figure>
<p>This is the content of the third article. Lorem ipsum dolor sit amet, consectetur adipiscing
elit.
</article>
KNSIT 23
Web Technology Lab BCSL504
<article>
<figure>
<figcaption>Image Caption</figcaption>
</figure>
<p>This is the content of the fourth article. Lorem ipsum dolor sit amet, consectetur adipiscing
elit.
</article>
<article>
<figure>
<figcaption>Image Caption</figcaption>
</figure>
<p>This is the content of the fourth article. Lorem ipsum dolor sit amet, consectetur adipiscing
elit.
</article>
<article>
<figure>
<figcaption>Image Caption</figcaption>
</figure>
<p>This is the content of the fourth article. Lorem ipsum dolor sit amet, consectetur adipiscing
elit.
</article>
KNSIT 24
Web Technology Lab BCSL504
</main>
<aside class="related-news">
<h3>Related News</h3>
<ul>
</ul>
</aside>
</div>
<section>
<h2>Recent Posts</h2>
<div>
<table>
<caption>List of Posts</caption>
<thead>
<tr>
<th>Post Title</th>
<th>Date</th>
<th>Author</th>
</tr>
</thead>
<tbody>
<tr>
<td>Post 1</td>
KNSIT 25
Web Technology Lab BCSL504
<td>2024-08-30</td>
<td>Author 1</td>
</tr>
<tr>
<td>Post 2</td>
<td>2024-08-29</td>
<td>Author 2</td>
</tr>
<tr>
<td>Post 3</td>
<td>2024-08-28</td>
<td>Author 3</td>
</tr>
</tbody>
</table>
</div>
</section>
<footer>
</footer>
</body>
</html>
PRG6:
6. Apply HTML, CSS and JavaScript to design a simple calculator to perform the
following operations: sum, product, difference, remainder, quotient, power, square-
root and square.
KNSIT 26
Web Technology Lab BCSL504
<!DOCTYPE html>
<head>
<title>Simple Calculator | vtucode</title>
<style>
body {
font-family: 'Arial', sans-serif;
display: flex;
justify-content: center;
align-items: center;
height: 100vh;
margin: 0;
}
.calculator {
background: #fff;
padding: 20px;
border-radius: 12px;
box-shadow: 0 4px 8px rgba(0, 0, 0, 0.2);
width: 320px;
text-align: center;
}
h1 {
border-radius: 8px;
background: #000;
font-size: 24px;
padding: 10px;
KNSIT 27
Web Technology Lab BCSL504
color: #ffffff;
margin-bottom: 30px;
}
input,
select,
button {
width: 100%;
margin: 10px 0;
padding: 12px;
border: 1px solid #0808081d;
border-radius: 8px;
font-size: 16px;
box-sizing: border-box;
transition: border-color 0.3s, box-shadow 0.3s;
}
#operation {
cursor: pointer;
}
input:focus,
select:focus,
button:focus {
outline: none;
border-color: #007bff;
KNSIT 28
Web Technology Lab BCSL504
KNSIT 29
Web Technology Lab BCSL504
#result.error {
background: #ffdddd;
border-color: #ff0000;
}
#result.success {
font-size: 17px;
font-weight: 500;
color: #000;
background: #6ef08d38;
border-color: #47e56d;
}
#result {
font-size: 18px;
color: #000000;
border-radius: 8px;
background: #afffe2;
border: 1px solid #ccc;
box-shadow: 0 2px 4px rgba(0, 0, 0, 0.1);
transition: opacity 0.5s, transform 0.5s;
opacity: 0;
transform: translateY(-20px);
}
#result.show {
cursor: not-allowed;
opacity: 1;
KNSIT 30
Web Technology Lab BCSL504
margin-top: 20px;
padding: 15px;
transform: translateY(0);
}
</style>
</head>
<body>
<div class="calculator">
<h1>Simple Calculator</h1>
<form id="calculator-form">
<input type="number" id="num1" placeholder="Enter first number" required>
<input type="number" id="num2" placeholder="Enter second number"
required>
<select id="operation" required>
<option value="">Select Operation</option>
<option value="sum">Sum</option>
<option value="product">Product</option>
<option value="difference">Difference</option>
<option value="remainder">Remainder</option>
<option value="quotient">Quotient</option>
<option value="power">Power</option>
<option value="sqrt">Square Root</option>
<option value="square">Square</option>
</select>
KNSIT 31
Web Technology Lab BCSL504
if (isNaN(num1) || isNaN(num2)) {
result = 'Please enter valid numbers.';
resultClass = 'error';
} else {
switch (operation) {
case 'sum':
result = `Sum: ${num1 + num2}`;
break;
case 'product':
result = `Product: ${num1 * num2}`;
break;
case 'difference':
result = `Difference: ${num1 - num2}`;
KNSIT 32
Web Technology Lab BCSL504
break;
case 'remainder':
result = `Remainder: ${num1 % num2}`;
break;
case 'quotient':
if (num2 === 0) {
result = 'Cannot divide by zero';
resultClass = 'error';
} else {
result = `Quotient: ${num1 / num2}`;
}
break;
case 'power':
result = `Power: ${Math.pow(num1, num2)}`;
break;
case 'sqrt':
if (num1 < 0 || num2 < 0) {
result = 'Square root is not defined for negative numbers';
resultClass = 'error';
} else {
result = `Square Root of ${num1}: ${Math.sqrt(num1)} <br> Square
Root of ${num2}: ${Math.sqrt(num2)}`;
}
break;
case 'square':
KNSIT 33
Web Technology Lab BCSL504
<!DOCTYPE html>
<head>
<script src="https://cdnjs.cloudflare.com/ajax/libs/crypto-js/4.1.1/crypto-js.min.js"></script>
KNSIT 34
Web Technology Lab BCSL504
<style>
*{
padding: 0;
margin: 0;
box-sizing: border-box;
body {
color: #000000;
.container {
width: 60%;
margin: 0 auto;
padding: 20px;
.head-title h1 {
font-size: 28px;
padding: 10px;
color: #fff;
margin-bottom: 50px;
.head-title {
width: 100%;
background: #000;
text-align: center;
border-radius: 10px;
.section {
KNSIT 35
Web Technology Lab BCSL504
margin-bottom: 40px;
padding: 20px;
border-radius: 8px;
background: #fff;
box-shadow: rgba(0, 0, 0, 0.1) 0px 1px 3px 0px, rgba(0, 0, 0, 0.06) 0px 1px 2px 0px;
overflow: hidden;
.section h2 {
color: #000000;
font-size: 20px;
margin-bottom: 15px;
textarea {
font-size: 14px;
width: 100%;
height: 120px;
margin-bottom: 15px;
padding: 12px;
border-radius: 8px;
box-sizing: border-box;
textarea:focus {
background: transparent;
KNSIT 36
Web Technology Lab BCSL504
border-color: #007BFF;
outline: none;
input[type="text"] {
padding: 12px;
border-radius: 8px;
box-sizing: border-box;
margin-bottom: 15px;
input[type="text"]:focus {
border-color: #007BFF;
outline: none;
button {
display: inline-block;
margin: 10px 0;
font-weight: 600;
border: none;
border-radius: 7px;
background-color: #007BFF;
color: #fff;
KNSIT 37
Web Technology Lab BCSL504
cursor: pointer;
font-size: 16px;
button:hover {
button:focus {
pre {
display: none;
background: #f8f9fa;
padding: 15px;
border-radius: 8px;
overflow: auto;
.error {
margin-top: 10px;
font-size: 14px;
color: #000;
background: #ffdddd;
border-color: #ff0000;
padding: 10px;
.success {
KNSIT 38
Web Technology Lab BCSL504
margin-top: 10px;
font-size: 14px;
color: #000;
background: #6ef08d38;
border-color: #47e56d;
padding: 10px;
.adjust-area {
margin-top: 30px;
</style>
</head>
<body>
<div class="container">
<div class="head-title">
<h1>Simple Converter</h1>
</div>
<div class="section">
</div>
<div class="section">
KNSIT 39
Web Technology Lab BCSL504
</div>
<div class="section">
</div>
<div class="section">
</div>
</div>
<script>
element.textContent = text;
element.style.display = 'block';
element.style.opacity = '1';
function convertJsonToObject() {
KNSIT 40
Web Technology Lab BCSL504
try {
} catch (error) {
function convertJsonToDate() {
try {
} else {
} catch (error) {
function convertJsonToCsv() {
try {
KNSIT 41
Web Technology Lab BCSL504
const csv = [
keys.join(','),
].join('\n');
} else {
catch (error)
function convertCsvToJson() {
try {
if (lines.length > 1) {
if (keys.length > 0) {
obj[key] = values[index];
return obj;
}, {});
});
KNSIT 42
Web Technology Lab BCSL504
} else {
} else {
} catch (error) {
function createHash() {
if (hashInput.length > 0) {
} else {
</script>
</body>
</html>
PRG8:
Program 8A
8a. Develop a PHP program (with HTML/CSS) to keep track of the number of
visitors visiting the web page and to display this count of visitors, with relevant
headings.
KNSIT 43
Web Technology Lab BCSL504
Create a file name called track.php, copy the below code and paste it and save
it.
Copy track.php file and open XAAMP directory if installed else install it click
here
There you’ll find a folder named “htdocs”.
Inside the “htdocs” folder, paste track.php file.
After then open your XAAMP and start the Apache server.
Open your favorite browser; we recommend using Google Chrome or Mozilla
Firefox.
Then, go to the URL “http://localhost/track.php“.
<?php
$counterFile = "counter.txt";
if (!file_exists($counterFile)) {
file_put_contents($counterFile, "0");
$currentCount = file_get_contents($counterFile);
$newCount = $currentCount + 1;
file_put_contents($counterFile, $newCount);
?>
<!DOCTYPE html>
<html lang="en">
<head>
<style>
KNSIT 44
Web Technology Lab BCSL504
body {
text-align: center;
margin: 0;
padding: 0;
display: flex;
flex-direction: column;
justify-content: center;
height: 100vh;
background-color: #f4f4f9;
color: #333;
.container {
background: #fff;
padding: 20px;
border-radius: 8px;
margin: 0 auto;
width: 60%;
h1 {
KNSIT 45
Web Technology Lab BCSL504
font-size: 2.5em;
margin: 0;
p{
font-size: 1.2em;
color: #555;
</style>
</head>
<body>
<div class="container">
</div>
</body>
</html>
Program 8B
8b. Develop a PHP program (with HTML/CSS) to sort the student records which are
stored in the database using selection sort.
KNSIT 46
Web Technology Lab BCSL504
Create a database name called students or download and import click here
Create a file name called sort_students.php, copy the below code and paste it
and save it.
Copy sort_students.php file and open XAAMP directory if installed else install
it click here
There you’ll find a folder named “htdocs”.
Inside the “htdocs” folder, paste sort_students.php file.
After then open your XAAMP and start the Apache server.
Open your favorite browser; we recommend using Google Chrome or Mozilla
Firefox.
Then, go to the URL “http://localhost/sort_students.php“.
<?php
$servername = "localhost";
$username = "root";
$password = "";
$dbname = "students";
if ($conn->connect_error) {
$result = $conn->query($sql);
$students = [];
if ($result->num_rows > 0) {
KNSIT 47
Web Technology Lab BCSL504
$students[] = $row;
$n = count($arr);
$minIndex = $i;
$minIndex = $j;
$temp = $arr[$i];
$arr[$i] = $arr[$minIndex];
$arr[$minIndex] = $temp;
selectionSort($students, 'name');
?>
KNSIT 48
Web Technology Lab BCSL504
<!DOCTYPE html>
<head>
<style>
body {
background-color: #f0f2f5;
color: #333;
margin: 0;
padding: 20px;
h2 {
text-align: center;
color: #4A90E2;
margin-bottom: 20px;
table {
width: 100%;
border-collapse: collapse;
background-color: #fff;
border-radius: 10px;
KNSIT 49
Web Technology Lab BCSL504
overflow: hidden;
margin: 0 auto;
th,
td {
text-align: left;
th {
background-color: #4A90E2;
color: white;
text-transform: uppercase;
letter-spacing: 0.03em;
tr {
tr:hover {
KNSIT 50
Web Technology Lab BCSL504
background-color: #f1f1f1;
td {
font-size: 0.9em;
color: #555;
table,
th,
td {
display: block;
width: 100%;
th,
td {
box-sizing: border-box;
tr {
margin-bottom: 15px;
display: block;
KNSIT 51
Web Technology Lab BCSL504
th {
position: absolute;
top: -9999px;
left: -9999px;
td {
border: none;
position: relative;
padding-left: 50%;
text-align: right;
td:before {
content: attr(data-label);
position: absolute;
left: 0;
width: 50%;
padding-left: 15px;
font-weight: bold;
text-align: left;
text-transform: uppercase;
KNSIT 52
Web Technology Lab BCSL504
color: #4A90E2;
</style>
</head>
<body>
<table>
<thead>
<tr>
<th>ID</th>
<th>Name</th>
<th>USN</th>
<th>Branch</th>
<th>Email</th>
<th>Address</th>
</tr>
</thead>
<tbody>
<tr>
KNSIT 53
Web Technology Lab BCSL504
</tr>
</tbody>
</table>
</body>
</html>
PRG9:
9. Develop jQuery script (with HTML/CSS) for:
a. Appends the content at the end of the existing paragraph and list.
b. Change the state of the element with CSS style using animate() method.
c. Change the color of any div that is animated.
<!DOCTYPE html>
KNSIT 54
Web Technology Lab BCSL504
<head>
<script src="https://code.jquery.com/jquery-3.6.0.min.js"></script>
<title>jQuery Example | vtucode</title>
<style>
body {
font-family: 'Roboto', sans-serif;
background-color: #f4f7f6;
margin: 0;
padding: 0;
display: flex;
justify-content: center;
align-items: center;
height: 100vh;
}
.container {
text-align: center;
background: #fff;
padding: 30px;
border-radius: 12px;
box-shadow: 0 4px 20px rgba(0, 0, 0, 0.1);
transition: transform 0.3s ease-in-out;
}
.container:hover {
transform: scale(1.02);
KNSIT 55
Web Technology Lab BCSL504
}
#paragraph {
margin-bottom: 20px;
color: #333;
font-size: 18px;
line-height: 1.5;
}
#list {
margin-bottom: 20px;
list-style: none;
padding: 0;
}
#list li {
background: #e8f0fe;
margin: 5px 0;
padding: 10px;
border-radius: 8px;
transition: background 0.3s;
}
#list li:hover {
background: #d0e2fe;
}
.box {
padding: 0 10px;
KNSIT 56
Web Technology Lab BCSL504
width: 100px;
height: 100px;
background-color: #007bff;
margin: 20px auto;
line-height: 100px;
color: white;
text-align: center;
border-radius: 8px;
transition: all 0.3s ease;
}
button {
padding: 12px 24px;
margin: 10px;
cursor: pointer;
border: none;
border-radius: 6px;
font-size: 16px;
background: #007bff;
color: white;
transition: box-shadow 0.3s, transform 0.2s;
box-shadow: 0 4px 10px rgba(0, 0, 0, 0.1);
}
button:hover {
box-shadow: 0 0 0 2px #fff, 0 0 0 4px #007bff;
KNSIT 57
Web Technology Lab BCSL504
}
button:focus {
box-shadow: 0 0 0 2px #fff, 0 0 0 4px #007bff;
}
button:active {
background: #004494;
transform: translateY(0);
}
</style>
</head>
<body>
<div class="container">
<p id="paragraph">This is an existing paragraph.</p>
<ul id="list">
<li>List item 1</li>
<li>List item 2</li>
</ul>
<div class="box" id="box">Animate me!</div>
<button id="appendButton">Append Content</button>
<button id="animateButton">Animate Box</button>
</div>
<script>
$(document).ready(function () {
$("#appendButton").click(function () {
KNSIT 58
Web Technology Lab BCSL504
PRG10
10. Develop a JavaScript program with Ajax (with HTML/CSS) for:
a. Use ajax() method (without Jquery) to add the text content from the text file by
KNSIT 59
Web Technology Lab BCSL504
Note: Create two separate file within the same folder one is textfile.txt and other data.json then
copy below text for the both separate file and paste it save it.
textfile.txt
hi this is example text...
data.json{"name":"John Doe","age":30,"city":"New
York","skills":["JavaScript","React","Node.js"],"address":{"street":"123 Elm
Street","zipcode":"10001"},"projects":[{"name":"Website
Redesign","year":2023,"technologies":["HTML","CSS","JavaScript"]},{"name":"Mo
bile App","year":2024,"technologies":["React Native","Expo"]}]}
PROGRAM:
<!DOCTYPE html>
<head>
<title>AJAX Examples | vtucode</title>
<script
src="https://ajax.googleapis.com/ajax/libs/jquery/3.6.0/jquery.min.js"></scrip
t>
<style>
body {
font-family: Arial, sans-serif;
margin: 0;
padding: 0;
background-color: #f4f4f9;
KNSIT 60
Web Technology Lab BCSL504
}
h1 {
text-align: center;
color: #333;
padding: 20px 0;
}
#content {
flex-direction: column;
display: flex;
max-width: 600px;
margin: 20px auto;
padding: 20px;
border: 1px solid #ddd;
border-radius: 8px;
background-color: #fff;
box-shadow: 0 0 10px rgba(0, 0, 0, 0.1);
}
button {
display: inline-block;
padding: 10px 15px;
margin: 12px;
border: none;
border-radius: 5px;
background-color: #007bff;
KNSIT 61
Web Technology Lab BCSL504
color: #fff;
font-size: 16px;
cursor: pointer;
transition: box-shadow 0.3s;
}
button:hover {
box-shadow: 0 0 0 2px #fff, 0 0 0 4px #007bff;
}
button:focus {
box-shadow: 0 0 0 2px #fff, 0 0 0 4px #007bff;
}
#output {
display: none;
margin-top: 20px;
padding: 10px;
border-radius: 5px;
white-space: pre-wrap;
max-height: 300px;
overflow-y: auto;
}
#output.plain-ajax {
background-color: #f0f8ff;
border: 1px solid #b0c4de;
}
KNSIT 62
Web Technology Lab BCSL504
#output.jquery-ajax {
background-color: #f5fffa;
border: 1px solid #98fb98;
}
#output.jquery-json {
background-color: #fffaf0;
border: 1px solid #ffd700;
}
#output.parse-json {
background-color: #fff0f5;
border: 1px solid #ff69b4;
}
</style>
</head>
<body>
<h1>AJAX Examples</h1>
<div id="content">
<button id="plain-ajax-btn">Load Text (Plain AJAX)</button>
<button id="jquery-ajax-btn">Load Text (jQuery AJAX)</button>
<button id="jquery-json-btn">Load JSON (jQuery getJSON)</button>
<button id="parse-json-btn">Load and Parse JSON (jQuery get)</button>
<div id="output"></div>
</div>
KNSIT 63
Web Technology Lab BCSL504
<script>
function showOutput(className) {
const output = document.getElementById('output');
output.className = className;
output.style.display = 'block';
}
document.getElementById('plain-ajax-btn').addEventListener('click',
function () {
var xhr = new XMLHttpRequest();
xhr.open('GET', 'textfile.txt', true);
xhr.onload = function () {
if (xhr.status === 200) {
document.getElementById('output').innerText = xhr.responseText;
} else {
document.getElementById('output').innerText = 'Error loading file.';
}
showOutput('plain-ajax');
};
xhr.send();
});
$('#jquery-ajax-btn').on('click', function () {
$.ajax({
url: 'textfile.txt',
method: 'GET',
KNSIT 64
Web Technology Lab BCSL504
.done(function (data) {
try {
let jsonData;
if (typeof data === 'string') {
jsonData = JSON.parse(data);
} else {
jsonData = data;
}
$('#output').text(JSON.stringify(jsonData, null, 2));
} catch (e) {
$('#output').text('Error parsing JSON: ' + e.message);
}
})
.fail(function () {
$('#output').text('Error loading JSON file.');
})
.always(function () {
showOutput('parse-json');
});
});
</script>
</body>
</html>
KNSIT 66