Tugas
Ninguém assumiu esta issue ainda.
Avaliação
- Dificuldade
- 5/5
- Tempo estimado
- Mais de uma semana
- Facilidade para iniciantes
- 1/100
- Tipo de issue
- Funcionalidade
- Clareza
- Precisa de esclarecimento
- Status de atividade
- Estagnada
- Stack de tecnologia
- css, html, javascript
Direção de pesquisa
A issue contém uma página HTML independente com CSS e JavaScript incorporados, mas não nomeia nenhum arquivo do repositório, teste, ponto de entrada ou alteração solicitada. Esclareça a contribuição pretendida e como ela se relaciona com htm antes de pesquisar; os critérios de conclusão não podem ser determinados a partir do texto da issue.
Escrita pelo modelo de indexação a partir do texto da issue.
Descrição
* {
box-sizing: border-box;
}
body {
margin: 0;
background-color: var(--background-color);
color: var(--text-color);
font-family: var(--font-family);
line-height: 1.6;
scroll-behavior: smooth;
}
header {
background-color: var(--primary-color);
color: var(--light-color);
padding: 20px 30px;
position: fixed;
width: 100%;
top: 0;
left: 0;
z-index: 1000;
box-shadow: 0 2px 4px rgb(0 0 0 / 0.1);
}
.container {
max-width: 1100px;
margin: 0 auto;
padding: 0 20px;
}
nav {
display: flex;
justify-content: space-between;
align-items: center;
}
nav a.logo {
font-weight: 700;
font-size: 1.5rem;
color: var(--light-color);
text-decoration: none;
letter-spacing: 2px;
}
nav ul {
list-style: none;
display: flex;
margin: 0;
padding: 0;
}
nav ul li {
margin-left: 25px;
}
nav ul li a {
color: var(--light-color);
text-decoration: none;
font-weight: 600;
transition: color 0.3s ease;
}
nav ul li a:hover {
color: var(--accent-color);
}
main {
padding-top: 80px;
}
.hero {
background: linear-gradient(rgba(0,123,255,0.8), rgba(0,123,255,0.8)), url('https://images.unsplash.com/photo-1507209696991-9cc112c21126?ixlib=rb-4.0.3&auto=format&fit=crop&w=1350&q=80') center/cover no-repeat;
color: var(--light-color);
text-align: center;
padding: 120px 20px 80px;
border-radius: 0 0 40px 40px;
box-shadow: inset 0 0 0 1000px rgba(0,0,0,0.25);
}
.hero h1 {
font-size: 3rem;
margin-bottom: 15px;
letter-spacing: 2px;
}
.hero p {
font-size: 1.25rem;
max-width: 700px;
margin: 0 auto 30px;
}
.btn-primary {
background-color: var(--accent-color);
color: var(--light-color);
padding: 15px 30px;
text-decoration: none;
font-size: 1.1rem;
border-radius: 30px;
font-weight: 600;
box-shadow: 0 4px 10px rgb(40 167 69 / 0.4);
transition: background-color 0.3s ease;
display: inline-block;
}
.btn-primary:hover {
background-color: #1e7e34;
}
section {
padding: 60px 20px;
background-color: var(--light-color);
border-radius: 15px;
margin: 40px auto;
max-width: 1100px;
box-shadow: 0 2px 8px rgb(0 0 0 / 0.1);
}
section h2 {
text-align: center;
margin-bottom: 40px;
font-size: 2.5rem;
color: var(--primary-color);
letter-spacing: 1.5px;
}
.about p {
max-width: 850px;
margin: 0 auto;
font-size: 1.15rem;
text-align: center;
color: var(--secondary-color);
}
.services {
display: flex;
flex-wrap: wrap;
justify-content: center;
gap: 30px;
}
.service-card {
background: var(--background-color);
border-radius: 15px;
box-shadow: 0 1px 10px rgb(0 0 0 / 0.05);
width: 280px;
padding: 30px;
text-align: center;
transition: transform 0.3s ease;
}
.service-card:hover {
transform: translateY(-10px);
box-shadow: 0 6px 20px rgb(0 0 0 / 0.15);
}
.service-icon {
font-size: 50px;
color: var(--accent-color);
margin-bottom: 20px;
}
.service-title {
font-size: 1.3rem;
font-weight: 700;
margin-bottom: 15px;
color: var(--text-color);
}
.service-desc {
font-size: 1rem;
color: var(--secondary-color);
}
.contact-form {
max-width: 600px;
margin: 0 auto;
}
.form-group {
margin-bottom: 20px;
}
label {
display: block;
margin-bottom: 8px;
font-weight: 600;
color: var(--text-color);
}
input[type="text"],
input[type="email"],
textarea {
width: 100%;
padding: 12px 15px;
border-radius: 8px;
border: 1px solid #ccc;
font-size: 1rem;
font-family: var(--font-family);
resize: vertical;
transition: border-color 0.3s ease;
}
input[type="text"]:focus,
input[type="email"]:focus,
textarea:focus {
border-color: var(--primary-color);
outline: none;
}
textarea {
min-height: 120px;
}
button[type="submit"] {
background: var(--primary-color);
color: var(--light-color);
border: none;
padding: 14px 25px;
font-size: 1.1rem;
border-radius: 30px;
cursor: pointer;
font-weight: 600;
box-shadow: 0 4px 10px rgb(0 123 255 / 0.4);
transition: background-color 0.3s ease;
width: 100%;
}
button[type="submit"]:hover {
background-color: #0056b3;
}
footer {
margin: 40px 0 20px;
text-align: center;
color: var(--secondary-color);
font-size: 0.9rem;
}
.social-links {
margin-top: 15px;
}
.social-links a {
margin: 0 12px;
display: inline-block;
color: var(--secondary-color);
font-size: 1.5rem;
transition: color 0.3s ease;
text-decoration: none;
}
.social-links a:hover {
color: var(--primary-color);
}
@media (max-width: 768px) {
.services {
flex-direction: column;
align-items: center;
}
nav ul {
display: none;
}
nav .menu-toggle {
display: block;
cursor: pointer;
font-size: 1.5rem;
}
}
</style>
Usaha Maju
- Tentang
- Layanan
- Kontak
Selamat Datang di Usaha Maju
Mendukung pertumbuhan bisnis Anda dengan solusi profesional dan terpercaya.
Hubungi Kami<section id="about" class="about" aria-labelledby="about-heading">
<h2 id="about-heading">Tentang Kami</h2>
<p>Usaha Maju adalah perusahaan yang berfokus pada pengembangan solusi bisnis inovatif. Kami berdedikasi membantu usaha kecil dan menengah mencapai potensi maksimal mereka dengan layanan konsultasi, pemasaran digital, dan solusi teknologi terkini.</p>
</section>
<section id="services" aria-labelledby="services-heading">
<h2 id="services-heading">Layanan Kami</h2>
<div class="services">
<article class="service-card" role="article" aria-label="Konsultasi Bisnis">
<div class="service-icon" aria-hidden="true">📈</div>
<h3 class="service-title">Konsultasi Bisnis</h3>
<p class="service-desc">Analisis dan strategi bisnis untuk membantu usaha Anda tumbuh dan beradaptasi di pasar yang kompetitif.</p>
</article>
<article class="service-card" role="article" aria-label="Pemasaran Digital">
<div class="service-icon" aria-hidden="true">💡</div>
<h3 class="service-title">Pemasaran Digital</h3>
<p class="service-desc">Meningkatkan visibilitas usaha Anda melalui kampanye online efektif dan strategi media sosial.</p>
</article>
<article class="service-card" role="article" aria-label="Solusi Teknologi">
<div class="service-icon" aria-hidden="true">🖥️</div>
<h3 class="service-title">Solusi Teknologi</h3>
<p class="service-desc">Pengembangan aplikasi dan sistem custom yang sesuai dengan kebutuhan bisnis Anda.</p>
</article>
</div>
</section>
<section id="contact" aria-labelledby="contact-heading">
<h2 id="contact-heading">Kontak Kami</h2>
<form class="contact-form" onsubmit="return handleSubmit(event)" aria-label="Form Kontak">
<div class="form-group">
<label for="name">Nama Lengkap</label>
<input type="text" id="name" name="name" placeholder="Masukkan nama lengkap Anda" required aria-required="true" />
</div>
<div class="form-group">
<label for="email">Email</label>
<input type="email" id="email" name="email" placeholder="email@domain.com" required aria-required="true" />
</div>
<div class="form-group">
<label for="message">Pesan</label>
<textarea id="message" name="message" placeholder="Tulis pesan Anda di sini..." required aria-required="true"></textarea>
</div>
<button type="submit">Kirim Pesan</button>
</form>
</section>
© 2024 Usaha Maju. Semua hak cipta dilindungi.
📘 🐦 📸 <script> function handleSubmit(event) { event.preventDefault(); const name = event.target.name.value.trim(); const email = event.target.email.value.trim(); const message = event.target.message.value.trim(); if (!name || !email || !message) { alert("Mohon lengkapi semua kolom."); return false; } if (!validateEmail(email)) { alert("Mohon masukkan alamat email yang valid."); return false; } alert("Terima kasih, " + name + "! Pesan Anda telah terkirim."); event.target.reset(); return false; } function validateEmail(email) { const re = /^[\\w-\\.]+@([\\w-]+\\.)+[\\w-]{2,4}$/; return re.test(email.toLowerCase()); } </script>- Linguagem predominante
- JavaScript
- Estrelas
- 9k
- Forks
- 181
- Métricas de merge de PRs
- Nenhum PR com merge em 30d
Guia de contribuição
Primeiros passos
- Leia a issue inteira e depois o guia de contribuição do projeto.
- Comente na issue dizendo que vai assumir — evita que duas pessoas façam o mesmo trabalho.
- Faça um fork do repositório e trabalhe em uma branch.
- Abra um pull request que referencie o número da issue.
Mais de developit/htm
-
Sarthak Aberta
Dificuldade 5/5 Mais de uma semana Facilidade para iniciantes 1/100
-
Tugas Aberta
Dificuldade 5/5 Mais de uma semana Facilidade para iniciantes 10/100
-
type checking templates Aberta
Dificuldade 5/5 Mais de uma semana Facilidade para iniciantes 20/100
-
Dificuldade 2/5 1-3 horas Facilidade para iniciantes 35/100
-
Dificuldade 5/5 Mais de uma semana Facilidade para iniciantes 25/100
Todas as issues de developit/htm
Issues semelhantes
-
awaiting triage bug Causes friction Hop Gui P1 P2 Transforms
Dificuldade 2/5 1-3 horas Facilidade para iniciantes 75/100
-
Dificuldade 2/5 1-3 horas Facilidade para iniciantes 75/100
-
Dificuldade 2/5 1-3 horas Facilidade para iniciantes 75/100
-
Improve Title Support Aberta
Dificuldade 2/5 1-3 horas Facilidade para iniciantes 70/100
georgestephanis/p2026#40 ·
-
Enatega Customer and Rider app: Add-ons price is not visible to customer after order is placed. Aberta
Dificuldade 2/5 1-3 horas Facilidade para iniciantes 75/100
Margaret-Petersen/food-delivery-app-clone-react-native#1981 ·