Propriedade CSS Overflow
- Definição: Overflow refere-se à forma como os elementos lidam com conteúdo que excede, ou "transborda", o tamanho do elemento contêiner. Overflow é bidimensional.
overflow-x: O eixo x determina o transbordamento horizontal.
overflow-y: o eixo y determina o transbordamento vertical.
overflow: Propriedade abreviada para overflow-x e overflow-y. Se for dado um valor, ambos os overflows o utilizarão. Se forem dados dois valores, o overflow-x usará o primeiro e o overflow-y usará o segundo.
<link rel="stylesheet" href="styles.css">
<div class="overflow-box">
This is very long content that will overflow horizontally and vertically.
<br />
This is very long content that will overflow horizontally and vertically.
<br />
This is very long content that will overflow horizontally and vertically.
<br />
This is very long content that will overflow horizontally and vertically.
<br />
This is very long content that will overflow horizontally and vertically.
<br />
This is very long content that will overflow horizontally and vertically.
</div>
.overflow-box {
width: 140px;
height: 70px;
border: 2px solid black;
overflow-x: auto;
overflow-y: auto;
white-space:nowrap;
}
Propriedade CSS Transform
- Definição: Esta propriedade permite que você aplique várias transformações aos elementos, como rotacionar, escalar, inclinar ou transladar (mover) eles no espaço 2D ou 3D.
- Função
translate(): Esta função é usada para mover um elemento de sua posição atual.
- Função
scale(): Esta função permite que você altere o tamanho de um elemento.
- Função
rotate(): Esta função permite que você gire um elemento.
- Função
skew(): Esta função permite que você distorça um elemento.
- Transformações e Acessibilidade: Se você estiver usando transform para ocultar ou revelar conteúdo, certifique-se de que o conteúdo ainda seja acessível para leitores de tela e navegação por teclado. O conteúdo oculto deve estar realmente oculto, como ao usar
display: none ou visibility: hidden, em vez de simplesmente ser movido visualmente para fora da tela.
<link rel="stylesheet" href="styles.css">
<div class="container">
<div class="transform-box translate">Translate</div>
<div class="transform-box scale">Scale</div>
<div class="transform-box rotate">Rotate</div>
<div class="transform-box skew">Skew</div>
</div>
.container {
display: flex;
flex-direction: column;
align-items: center;
gap: 16px;
flex-wrap: wrap;
}
.transform-box {
width: 100px;
height: 100px;
background: coral;
color: white;
display: flex;
align-items: center;
justify-content: center;
}
/* translate() */
.translate {
transform: translateX(20px);
}
/* scale() */
.scale {
transform: scale(1.2);
}
/* rotate() */
.rotate {
transform: rotate(15deg);
}
/* skew() */
.skew {
transform: skew(10deg, 5deg);
}
O Modelo de Caixa
- Definição: No modelo de caixa do CSS, todo elemento é cercado por uma caixa. Essa caixa consiste em quatro componentes: a área de conteúdo,
padding, border e margin.
- Área de Conteúdo: A área de conteúdo é a parte mais interna da caixa. É o espaço que contém o conteúdo real de um elemento, como texto ou imagens.
padding: O padding é a área imediatamente após a área de conteúdo. É o espaço entre a área de conteúdo e a borda de um elemento.
border: A borda é a borda externa ou contorno de um elemento no modelo de caixa CSS. É o limite visual do elemento.
margin: A margem é o espaço fora da borda de um elemento. Ela determina a distância entre um elemento e outros elementos ao seu redor.
<link rel="stylesheet" href="styles.css">
<div class="box-model">Content</div>
.box-model {
width: 120px;
background: lightblue;
padding: 16px;
border: 4px solid teal;
margin: 20px;
text-align: center;
}
Colapso de Margem
- Definição: Esse comportamento ocorre quando as margens verticais de elementos adjacentes se sobrepõem, resultando em uma única margem igual à maior das duas. Esse comportamento se aplica apenas às margens verticais (superior e inferior), não às margens horizontais (esquerda e direita).
Os Valores da Propriedade content-box e border-box
- Propriedade
box-sizing: Esta propriedade é usada para determinar como o width e o height finais são calculados para um elemento HTML.
- Valor
content-box: No modelo content-box, o width e o height que você define para um elemento determinam as dimensões da área de conteúdo, mas eles não incluem o padding, border ou margin.
- Valor
border-box: Com border-box, a width e a height de um elemento incluem a área de conteúdo, o padding e o border, mas não incluem o margin.
<link rel="stylesheet" href="styles.css">
<div class="sizing-box content-box">Content-box</div>
<div class="sizing-box border-box">Border-box</div>
.sizing-box {
width: 150px;
padding: 10px;
border: 4px solid teal;
margin-bottom: 10px;
background: peachpuff;
text-align: center;
}
.content-box {
box-sizing: content-box;
}
.border-box {
box-sizing: border-box;
background: lightgreen;
}
Reset de CSS
- Definição: Um reset de CSS é uma folha de estilo que remove toda ou parte da formatação padrão que os navegadores aplicam aos elementos HTML. Opções de terceiros para resets de CSS incluem
sanitize.css e normalize.css.
Propriedade CSS Filter
- Definição: Esta propriedade pode ser usada para criar vários efeitos como desfoque, mudança de cor e ajuste de contraste.
- Função
blur(): Esta função aplica um desfoque Gaussiano ao elemento. A quantidade é definida em pixels e representa o raio do desfoque.
- Função
brightness(): Esta função ajusta o brilho do elemento. Um valor de 0% deixará o elemento completamente preto, enquanto valores acima de 100% aumentarão o brilho.
- Função
contrast(): Esta função ajusta o contraste do elemento. Um valor de 0% deixará o elemento completamente cinza, 100% fará o elemento aparecer normalmente e valores maiores que 100% aumentarão o contraste.
- Função
grayscale(): Esta função converte o elemento para escala de cinza. A quantidade é definida como uma porcentagem, onde 100% é completamente em escala de cinza e 0% deixa a imagem inalterada.
- Função
sepia(): Esta função aplica um tom sépia ao elemento. Como o grayscale, ela usa um valor percentual.
- Função
hue-rotate(): Esta função aplica uma rotação de matiz ao elemento. O valor é definido em graus e representa uma rotação ao redor do círculo de cores.
<link rel="stylesheet" href="styles.css">
<div class="container">
<img class="filter blur" src="https://cdn.G.E.A.R ACADEMY.org/curriculum/cat-photo-app/relaxing-cat.jpg" alt="Blur" />
<img class="filter brightness" src="https://cdn.G.E.A.R ACADEMY.org/curriculum/cat-photo-app/relaxing-cat.jpg" alt="Brightness" />
<img class="filter contrast" src="https://cdn.G.E.A.R ACADEMY.org/curriculum/cat-photo-app/relaxing-cat.jpg" alt="Contrast" />
<img class="filter grayscale" src="https://cdn.G.E.A.R ACADEMY.org/curriculum/cat-photo-app/relaxing-cat.jpg" alt="Grayscale" />
<img class="filter sepia" src="https://cdn.G.E.A.R ACADEMY.org/curriculum/cat-photo-app/relaxing-cat.jpg" alt="Sepia" />
<img class="filter hue" src="https://cdn.G.E.A.R ACADEMY.org/curriculum/cat-photo-app/relaxing-cat.jpg" alt="Hue Rotate" />
</div>
.container {
display: flex;
gap: 12px;
flex-wrap: wrap;
}
.filter {
width: 120px;
}
/* blur() */
.blur {
filter: blur(3px);
}
/* brightness() */
.brightness {
filter: brightness(130%);
}
/* contrast() */
.contrast {
filter: contrast(150%);
}
/* grayscale() */
.grayscale {
filter: grayscale(100%);
}
/* sepia() */
.sepia {
filter: sepia(100%);
}
/* hue-rotate() */
.hue {
filter: hue-rotate(90deg);
}