UNPKG

pagindata-js

Version:

A lightweight and modern pagination library written in vanilla JavaScript with no external dependencies

249 lines (211 loc) 4.45 kB
/* PaginDataJS - Estilos Básicos */ /* Estilos modernos y responsive para el plugin de paginación */ .paginationjs { font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, 'Helvetica Neue', Arial, sans-serif; font-size: 14px; line-height: 1.5; color: #333; margin: 20px 0; display: flex; align-items: center; justify-content: center; flex-wrap: wrap; gap: 10px; } .paginationjs-pages { display: flex; align-items: center; } .paginationjs ul { list-style: none; padding: 0; margin: 0; display: flex; align-items: center; gap: 4px; flex-wrap: wrap; } .paginationjs li { display: inline-block; margin: 0; } .paginationjs a { display: inline-block; padding: 8px 12px; text-decoration: none; border: 1px solid #ddd; color: #333; background-color: #fff; border-radius: 4px; transition: all 0.2s ease; text-align: center; font-weight: 500; } .paginationjs a:hover { background-color: #f8f9fa; border-color: #adb5bd; color: #495057; transform: translateY(-1px); box-shadow: 0 2px 4px rgba(0, 0, 0, 0.1); } .paginationjs .active a { background-color: #007bff; color: white; border-color: #007bff; font-weight: 600; } .paginationjs .active a:hover { background-color: #0056b3; border-color: #0056b3; transform: none; box-shadow: none; } .paginationjs .disabled a { color: #6c757d; background-color: #f8f9fa; border-color: #dee2e6; cursor: not-allowed; opacity: 0.6; } .paginationjs .disabled a:hover { background-color: #f8f9fa; border-color: #dee2e6; transform: none; box-shadow: none; } .paginationjs .paginationjs-prev a, .paginationjs .paginationjs-next a { font-weight: 600; padding: 8px 16px; } .paginationjs .paginationjs-ellipsis a { background-color: transparent; border-color: transparent; color: #6c757d; cursor: default; } .paginationjs .paginationjs-ellipsis a:hover { background-color: transparent; border-color: transparent; transform: none; box-shadow: none; } .paginationjs-nav { color: #6c757d; font-size: 13px; margin: 0 15px; white-space: nowrap; } .paginationjs-size-changer { margin: 0 15px; } .paginationjs-size-changer select { padding: 6px 10px; border: 1px solid #ddd; border-radius: 4px; background-color: #fff; font-size: 13px; color: #333; cursor: pointer; } .paginationjs-size-changer select:focus { outline: none; border-color: #007bff; box-shadow: 0 0 0 2px rgba(0, 123, 255, 0.25); } .paginationjs-go-input { margin: 0 15px; } .paginationjs-go-input input[type="text"] { padding: 6px 10px; border: 1px solid #ddd; border-radius: 4px; width: 60px; text-align: center; font-size: 13px; } .paginationjs-go-input input[type="text"]:focus { outline: none; border-color: #007bff; box-shadow: 0 0 0 2px rgba(0, 123, 255, 0.25); } .paginationjs-go-button { margin: 0 15px; } .paginationjs-go-button input[type="button"] { padding: 6px 12px; border: 1px solid #007bff; background-color: #007bff; color: white; border-radius: 4px; cursor: pointer; font-size: 13px; transition: all 0.2s ease; } .paginationjs-go-button input[type="button"]:hover { background-color: #0056b3; border-color: #0056b3; } .paginationjs-go-button input[type="button"]:active { transform: translateY(1px); } @media (max-width: 768px) { .paginationjs { flex-direction: column; gap: 15px; } .paginationjs ul { gap: 2px; } .paginationjs a { padding: 6px 10px; min-width: 32px; font-size: 13px; } .paginationjs-nav, .paginationjs-size-changer, .paginationjs-go-input, .paginationjs-go-button { margin: 5px 0; } .paginationjs-go-input input[type="text"] { width: 50px; } } @media (max-width: 480px) { .paginationjs ul { gap: 1px; } .paginationjs a { padding: 5px 8px; min-width: 28px; font-size: 12px; } .paginationjs .paginationjs-prev a, .paginationjs .paginationjs-next a { padding: 5px 10px; } } .paginationjs a:focus { outline: 2px solid #007bff; outline-offset: 2px; } .paginationjs a:focus:not(:focus-visible) { outline: none; } @media (prefers-contrast: high) { .paginationjs a { border-width: 2px; } .paginationjs .active a { border-width: 3px; } } @media (prefers-reduced-motion: reduce) { .paginationjs a { transition: none; } .paginationjs a:hover { transform: none; } }