| class CustomFooter extends HTMLElement { |
| connectedCallback() { |
| this.attachShadow({ mode: 'open' }); |
| this.shadowRoot.innerHTML = ` |
| <style> |
| footer { |
| background: rgba(17, 24, 39, 0.8); |
| backdrop-filter: blur(10px); |
| border-top: 1px solid rgba(255, 255, 255, 0.1); |
| color: white; |
| padding: 3rem 2rem; |
| text-align: center; |
| margin-top: auto; |
| } |
| |
| .footer-content { |
| max-width: 1200px; |
| margin: 0 auto; |
| display: flex; |
| flex-direction: column; |
| gap: 2rem; |
| } |
| |
| .footer-links { |
| display: flex; |
| justify-content: center; |
| gap: 2rem; |
| flex-wrap: wrap; |
| } |
| |
| .footer-links a { |
| color: #d1d5db; |
| text-decoration: none; |
| transition: color 0.3s ease; |
| } |
| |
| .footer-links a:hover { |
| color: #3b82f6; |
| } |
| |
| .social-links { |
| display: flex; |
| justify-content: center; |
| gap: 1rem; |
| } |
| |
| .social-links a { |
| display: inline-flex; |
| align-items: center; |
| justify-content: center; |
| width: 40px; |
| height: 40px; |
| background: rgba(255, 255, 255, 0.1); |
| border-radius: 50%; |
| transition: all 0.3s ease; |
| } |
| |
| .social-links a:hover { |
| background: #3b82f6; |
| transform: translateY(-2px); |
| } |
| |
| .copyright { |
| color: #9ca3af; |
| font-size: 0.875rem; |
| } |
| |
| @media (max-width: 768px) { |
| .footer-links { |
| flex-direction: column; |
| gap: 1rem; |
| } |
| } |
| </style> |
| <footer> |
| <div class="footer-content"> |
| <div class="social-links"> |
| <a href="#" aria-label="GitHub"><i data-feather="github"></i></a> |
| <a href="#" aria-label="Twitter"><i data-feather="twitter"></i></a> |
| <a href="#" aria-label="LinkedIn"><i data-feather="linkedin"></i></a> |
| <a href="#" aria-label="Instagram"><i data-feather="instagram"></i></a> |
| </div> |
| |
| <div class="footer-links"> |
| <a href="/privacy">Privacy Policy</a> |
| <a href="/terms">Terms of Service</a> |
| <a href="/contact">Contact Us</a> |
| <a href="/about">About</a> |
| </div> |
| |
| <div class="copyright"> |
| © 2024 DigitalNebula. All rights reserved. | Inspired by trae.ai |
| </div> |
| </div> |
| </footer> |
| `; |
| } |
| } |
|
|
| customElements.define('custom-footer', CustomFooter); |