;(function() { window.createMeasureObserver = (measureName) => { var markPrefix = `_uol-measure-${measureName}-${new Date().getTime()}`; performance.mark(`${markPrefix}-start`); return { end: function() { performance.mark(`${markPrefix}-end`); performance.measure(`uol-measure-${measureName}`, `${markPrefix}-start`, `${markPrefix}-end`); performance.clearMarks(`${markPrefix}-start`); performance.clearMarks(`${markPrefix}-end`); } } }; /** * Gerenciador de eventos */ window.gevent = { stack: [], RUN_ONCE: true, on: function(name, callback, once) { this.stack.push([name, callback, !!once]); }, emit: function(name, args) { for (var i = this.stack.length, item; i--;) { item = this.stack[i]; if (item[0] === name) { item[1](args); if (item[2]) { this.stack.splice(i, 1); } } } } }; var runningSearch = false; var hadAnEvent = true; var elementsToWatch = window.elementsToWatch = new Map(); var innerHeight = window.innerHeight; // timestamp da última rodada do requestAnimationFrame // É usado para limitar a procura por elementos visíveis. var lastAnimationTS = 0; // verifica se elemento está no viewport do usuário var isElementInViewport = function(el) { var rect = el.getBoundingClientRect(); var clientHeight = window.innerHeight || document.documentElement.clientHeight; // renderizando antes, evitando troca de conteúdo visível no chartbeat-related-content if(el.className.includes('related-content-front')) return true; // garante que usa ao mínimo 280px de margem para fazer o lazyload var margin = clientHeight + Math.max(280, clientHeight * 0.2); // se a base do componente está acima da altura da tela do usuário, está oculto if(rect.bottom < 0 && rect.bottom > margin * -1) { return false; } // se o topo do elemento está abaixo da altura da tela do usuário, está oculto if(rect.top > margin) { return false; } // se a posição do topo é negativa, verifica se a altura dele ainda // compensa o que já foi scrollado if(rect.top < 0 && rect.height + rect.top < 0) { return false; } return true; }; var asynxNextFreeTime = () => { return new Promise((resolve) => { if(window.requestIdleCallback) { window.requestIdleCallback(resolve, { timeout: 5000, }); } else { window.requestAnimationFrame(resolve); } }); }; var asyncValidateIfElIsInViewPort = function(promise, el) { return promise.then(() => { if(el) { if(isElementInViewport(el) == true) { const cb = elementsToWatch.get(el); // remove da lista para não ser disparado novamente elementsToWatch.delete(el); cb(); } } }).then(asynxNextFreeTime); }; // inicia o fluxo de procura de elementos procurados var look = function() { if(window.requestIdleCallback) { window.requestIdleCallback(findByVisibleElements, { timeout: 5000, }); } else { window.requestAnimationFrame(findByVisibleElements); } }; var findByVisibleElements = function(ts) { var elapsedSinceLast = ts - lastAnimationTS; // se não teve nenhum evento que possa alterar a página if(hadAnEvent == false) { return look(); } if(elementsToWatch.size == 0) { return look(); } if(runningSearch == true) { return look(); } // procura por elementos visíveis apenas 5x/seg if(elapsedSinceLast < 1000/5) { return look(); } // atualiza o último ts lastAnimationTS = ts; // reseta status de scroll para não entrar novamente aqui hadAnEvent = false; // indica que está rodando a procura por elementos no viewport runningSearch = true; const done = Array.from(elementsToWatch.keys()).reduce(asyncValidateIfElIsInViewPort, Promise.resolve()); // obtém todos os elementos que podem ter view contabilizados //elementsToWatch.forEach(function(cb, el) { // if(isElementInViewport(el) == true) { // // remove da lista para não ser disparado novamente // elementsToWatch.delete(el); // cb(el); // } //}); done.then(function() { runningSearch = false; }); // reinicia o fluxo de procura look(); }; /** * Quando o elemento `el` entrar no viewport (-20%), cb será disparado. */ window.lazyload = function(el, cb) { if(el.nodeType != Node.ELEMENT_NODE) { throw new Error("element parameter should be a Element Node"); } if(typeof cb !== 'function') { throw new Error("callback parameter should be a Function"); } elementsToWatch.set(el, cb); } var setEvent = function() { hadAnEvent = true; }; window.addEventListener('scroll', setEvent, { capture: true, ive: true }); window.addEventListener('click', setEvent, { ive: true }); window.addEventListener('resize', setEvent, { ive: true }); window.addEventListener('load', setEvent, { once: true, ive: true }); window.addEventListener('DOMContentLoaded', setEvent, { once: true, ive: true }); window.gevent.on('allJSLoadedAndCreated', setEvent, window.gevent.RUN_ONCE); // inicia a validação look(); })();
  • AssineUOL
Topo

Combinam com tudo! 8 peças que não podem faltar no seu guarda-roupas

Vestido preto, jeans e mais: veja roupas que combinam com tudo e formam diferentes looks - Arte UOL/Divulgação
Vestido preto, jeans e mais: veja roupas que combinam com tudo e formam diferentes looks Imagem: Arte UOL/Divulgação

Jessica Arruda

Colaboração para o UOL

20/06/2023 04h00

Andou fazendo uma faxina no guarda-roupa e agora acha que precisa de umas roupas novas? Atenção: nada de sair gastando uma fortuna em peças lindas —e que você vai usar só uma vez. É melhor apostar nas que combinam com tudo, o ano inteiro, e transitam com facilidade entre trabalho e lazer.

A seguir, listamos oito itens para combinar seu estilo pessoal com tendências da moda. Eles são garantia de looks incríveis, sem que você precise ar um tempão em frente ao armário sem saber o que vestir:

1. Camiseta

A camiseta vem ganhando espaço em looks tradicionalmente sofisticados e circulando até mesmo em festas mais formais. Sua versatilidade possibilita a mistura de elementos opostos, como por exemplo, em looks com t-shirt branca de algodão e saias metalizadas.

Pode ser usada, ainda, em produções mais descontraídas, com calças larguinhas e tênis. Modelos com estampas, frases ou imagens são as mais procuradas e proporcionam looks modernos.

Veja estas camisetas

Básica, em algodão

Com estampa

2. Blazer

Típico dos anos 80, o blazer surge revisitado, tanto na modelagem quanto no tecido. Cores clássicas como preto e azul marinho dão espaço a outros tons neutros como o branco, off-white e cinza.

A dica é usar com camisetas de estampas coloridas, top cropped —aquele que deixa a barriga à mostra —e body com detalhes em renda para dar aquele impacto no visual. Ou optar por um look inteiro da mesma cor, que está em alta na temporada.

Blazers para completar o look

Alongado, em alfaiataria

Versão cropped

3. Jaqueta jeans

A jaqueta jeans complementa diversos estilos de looks, com ar descontraído. Ela pode ser usada no cotidiano, com calça e blusa branca, e também em momentos especiais, por cima de vestidos mais estruturados e até o queridinho slip dress.

Veja estes modelos

Com rasgos

Mais longa

4. Vestido preto

Atemporal, possibilita as mais variadas combinações. Para ampliar as possibilidades de uso, invista em peças feitas de material de boa durabilidade e com corte que valorize seu estilo e tipo físico.

Experimente estes vestidos

Midi com linho

Com amarração

5. Calça jeans

Não importa se a modelagem é skinny (justa ao corpo), flare (justa no quadril e larga nas pernas), ou boyfriend (mais larguinha). Um bom par de jeans vale o investimento. Se você deseja evitar modismos, prefira modelagem reta com cintura média e cor uniforme que favorece as mais variadas silhuetas.

O que acha destas calças?

Skinny

Reta

6. Blusa listrada

Assim como a camisa branca e as camisetas, a blusa listrada se multiplica em várias ocasiões. Desde a produção básica com calça jeans até aquela mais elegante, com saia lápis de renda ou mídi com textura. Vale também investir em variações como camisas, cropped e blusas ombro a ombro com a estampa.

Veja duas opções

Com manga 7/8

Cropped de manga longa

7. Macacão

Um dos itens mais práticos do guarda-roupa feminino é confortável, versátil e fácil de combinar. De jeans ou tecidos leves e soltos, o macacão rende looks pra lá de estilosos: é só abusar dos órios!

Estes macacões vão te inspirar

Básico e soltinho

Estampado e pantalona

8. Lenço

No pescoço, nos cabelos ou em forma de cinto: não há limites de criatividade ao usar um lenço. Os coloridos "quebram" visuais monocromáticos enquanto os neutros arrematam as produções com classe e estilo.

Veja opções de lenços

Para o inverno

Leve e colorido

Fonte: Aninha Moretti, consultora de imagem e estilo.

Curte produtos de beleza, moda e achadinhos do momento? Fique de olho na nossa curadoria de produtos: no Monitor de Ofertas UOL, no Twitter (@ofertas_uol), no Telegram (monitordeofertasuol) e nos vídeos do TikTok (@guiadecompras_uol).

Rodapé content commerce -  -