Claudio51

Força da Senha

Jun 7th, 2025
16
0
Never
1
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
HTML 6.62 KB | None | 0 0
  1.  
  2. <!DOCTYPE html><!-- by [email protected] -->
  3. <html lang="pt-br">
  4. <head>
  5.     <meta charset="UTF-8">
  6.     <meta name="viewport" content="width=device-width, initial-scale=1.0">
  7.     <title>Forca da Senha</title>
  8.     <style>
  9.         body{
  10.             background-color:#e3e4e0;
  11.         }
  12.         .tab{
  13.             font-family: 'Trebuchet MS', sans-serif;
  14.             background-color:#fff;
  15.             width: 300px;
  16.             margin: 5px auto;
  17.             border: 1px solid #ccc;
  18.             border-radius: 10px;
  19.             box-shadow: 0 0 10px rgba(0, 0, 0, 0.1);
  20.             padding: 5px 20px 15px 20px;
  21.         }
  22.         label{
  23.             display: block;
  24.             margin-bottom: 10px;
  25.             text-align: center;
  26.         }
  27.         input[type="text"]{
  28.             width: 93%;
  29.             height: 25px;
  30.             margin-bottom: 10px;
  31.             right: 20px;
  32.             padding: 10px;
  33.             border: 1px solid #ccc;
  34.             float:left;
  35.         }
  36.         table,td{
  37.             border-color: #fff;
  38.             padding:0;
  39.         }
  40.         table{
  41.             width: 100%;
  42.         }
  43.         td{
  44.             width: 50%;
  45.         }
  46.         .forca{
  47.              background-color: rgb(238, 219, 157);  
  48.              padding: 0 10px;
  49.              border-radius: 5px;
  50.         }
  51.         #resultado{
  52.             margin-top: 10px;
  53.             font-size: 18px;
  54.             font-weight: bold;
  55.             background-color: white;
  56.             color:#000;
  57.             border-radius: 5px;
  58.             padding: 15px 0px 15px 0px;  
  59.         }
  60.         h2, h1{
  61.             background-color: #eee;
  62.         }
  63.         .imagem{
  64.             position:relative;
  65.             float:left;
  66.             margin-top:-60px;
  67.         }
  68.         img{
  69.             width:70px;
  70.             height:50px;  
  71.             background-color: #eee;
  72.             border:none;  
  73.         }
  74.         a{
  75.             text-decoration: none;
  76.             color:#000;
  77.         }
  78.         .senha{
  79.             width:19.2%;
  80.             border:solid 1px #000;
  81.             float:left;
  82.             padding:10px 0;
  83.             border:none;
  84.         }
  85.     </style>
  86. </head>
  87. <body>
  88.     <div class="tab">
  89.         <center><h1>Força da Senha</h1></center>
  90.         <center><h2>Cl&aacuteudio Brito</h2></center>
  91.        <div id="imagem" style="display:none;" >
  92.             <a href="https://youtu.be/mDaa9ty23e8" target="_blank"><img class="imagem" src="https://i.pinimg.com/564x/c9/ae/14/c9ae1482ccf3b4503d6c9fff41b999f1.jpg" /></a>
  93.         </div>
  94.         <table>
  95.             <tr>
  96.                 <td>
  97.                     <label for="senha">Senha</label>
  98.                     <input type="text" id="senha" maxlength="50" placeholder="Digite aqui a senha" >
  99.                 </td>
  100.             </tr>
  101.         </table>
  102.         <div id="corDaSenha"class="senha"></div>
  103.         <center><div id="resultado">Digite uma Senha</div></center>
  104.         <table class="forca">
  105.             <tr>
  106.                 <td>
  107.                     <span>Letra menúscula</span>
  108.                 </td>
  109.                 <td>
  110.                     <span>Vale 1</span>
  111.                 </td>
  112.             </tr>
  113.             <tr>
  114.                 <td>
  115.                     <span>Letra maiúscula</span>
  116.                 </td>
  117.                 <td>
  118.                     <span>Vale 1</span>
  119.                 </td>
  120.             </tr>
  121.             <tr>
  122.                 <td>
  123.                     <span>Número</span>
  124.                 </td>
  125.                 <td>
  126.                     <span>Vale 1</span>
  127.                 </td>
  128.             </tr>
  129.             <tr>
  130.                 <td>
  131.                     <span>Caracter especial</span>
  132.                 </td>
  133.                 <td>
  134.                     <span>Vale 1</span>
  135.                 </td>
  136.             </tr>
  137.             <tr>
  138.                 <td>
  139.                     <span>Seis caracteres</span>
  140.                 </td>
  141.                 <td>
  142.                     <span>Vale 1</span>
  143.                 </td>
  144.             </tr>
  145.         </table>
  146.     </div>
  147.    <script>
  148.         const corDaSenha = document.getElementById("corDaSenha");
  149.         const forcaSenha = document.getElementById("senha");
  150.         const result = document.getElementById("resultado");
  151.         forcaSenha.addEventListener("input", (e) =>{
  152.             e.preventDefault();
  153.             let forca = 0;
  154.             // forca da senha
  155.             if(forcaSenha.value.length >5){
  156.                 forca +=1;
  157.             }
  158.             if(/[A-Z]/.test(forcaSenha.value)){
  159.                 forca +=1;
  160.             }
  161.             if(/[a-z]/.test(forcaSenha.value)){
  162.                 forca +=1;
  163.             }
  164.             if(/[0-9]/.test(forcaSenha.value)){
  165.                 forca +=1;
  166.             }
  167.             if(/[^A-Za-z0-9]/.test(forcaSenha.value)){
  168.                 forca +=1;
  169.             }
  170.             // cor da senha e texto da senha
  171.             if(forca === 0){
  172.                 corDaSenha.style.backgroundColor = 'white';
  173.                 result.innerHTML = 'Digite uma Senha';
  174.             }
  175.             else if(forca === 1){
  176.                 corDaSenha.style.width = '20%';
  177.                 corDaSenha.style.backgroundColor = 'yellow';
  178.                 result.innerHTML = 'Senha Muito Fraca';
  179.             }
  180.             else if(forca === 2){
  181.                 corDaSenha.style.width = '40%';
  182.                 corDaSenha.style.backgroundColor = 'orange';
  183.                 result.innerHTML = 'Senha Fraca';
  184.             }
  185.             else if(forca === 3){
  186.                 corDaSenha.style.width = '60%';
  187.                 corDaSenha.style.backgroundColor = 'lightGreen';
  188.                 result.innerHTML = 'Senha Média';
  189.             }
  190.             else if(forca === 4){
  191.                 corDaSenha.style.width = '80%';
  192.                 corDaSenha.style.backgroundColor = 'green';  
  193.                 result.innerHTML = 'Senha Forte';
  194.             }else{
  195.                 corDaSenha.style.width = '100%';
  196.                 corDaSenha.style.backgroundColor = 'darkGreen';
  197.                 result.innerHTML = 'Senha Muito Forte';
  198.             }    
  199.         });
  200.         let image = document.createElement('img');
  201.         image.src="https://i.pinimg.com/564x/c9/ae/14/c9ae1482ccf3b4503d6c9fff41b999f1.jpg";
  202.         // mostra a div da imagem se estiver conectado a internet
  203.         image.onload = function(){
  204.             document.getElementById("imagem").style.display = "block";
  205.         }
  206.         // esconde a div da imagem se nao estiver conectado a internet
  207.         image.onerror = function(){
  208.             document.getElementById("imagem").style.display = "none";
  209.         }
  210.    </script>
  211. </body>
  212. </html>
Comments
Add Comment
Please, Sign In to add comment