Ответы пользователя по тегу CSS
  • Перестает обновляться style.min.css в сборке gulp. Почему?

    dmitryfx
    @dmitryfx
    Советую не мучиться с галпом, с ним вечно какие-то проблемы были, фиг знает, как он там под капотом работает.
    Пришел к тому, чтобы запускать подобные сборки просто как node js код. Абсолютный контроль над процессом и никаких непонятных глюков. Поначалу было сложновато, но зато никакой галп-магии, мы просто оперируем файлами. Если понадобится более сложная сборка, все равно придется в этом разобраться)

    Код только для примера, в нем много лишнего.

    Вот так создаем слушатель событий (у галпа под капотом тот же chokidar):

    async function Default(cb) {
    
    	
    
    	cl( chalk.black.bgGreen( "Default..." ) );
    	cl('\n');
    	
    	
    	var livereload_server = livereload.createServer();
    	
    	
    	let chokidar_settings = {
    		ignoreInitial: true,
    		usePolling: true,
    		interval: 200,
    		ignorePermissionErrors: true,
    		awaitWriteFinish: {
    			stabilityThreshold: 300,
    			pollInterval: 100
    		}
    	};
    
    	
    
    	let process_css_path = [
    		
    		'./project_www/assets/components/project/app2/scss/*.scss',
    		'./project_www/assets/components/project/test_360/scss/*.scss'
    	];
    	
    	let process_css_path_ignored = [
    		
    	];
    
    	let chokidar_settings_Process_CSS = {...chokidar_settings};
    	chokidar_settings_Process_CSS.ignored = process_css_path_ignored;
    	chokidar.watch( process_css_path, chokidar_settings_Process_CSS ).on('all', function (event, path) {
    
    		if( event == 'unlink' || event == 'unlinkDir' ) return;
    
    		Process_CSS(event, path);
    		
    		path = path.replace('.scss', '.css');
    		
    		path = 'D:/aera/' + path;
    		
    		livereload_server.refresh( path );
    
    	});


    А вот сама функция преобразования стилей:

    function Process_CSS( event, path ){
    
    	
    	cl( chalk.black.bgGreen( ` CSS Processing ${path} \n`) );
    
    	if( Fs.existsSync( path ) === false ){
    		cl( chalk.yellow( `Not exists: ${path} \n` ) );
    		return;	
    	}
    	
    	path = Path.resolve( path );
    	let scss_path = Path.dirname( path );
    	let scss_name = Path.parse( path ).name;
    	
    	let out_css;
    	try{
    		out_css = sass.compile( path );
    	} catch(err){
    		cl( chalk.red( `${ err } \n` ) );
    		return;
    	}
    	
    	out_css = out_css.css;
    	
    	Fs.writeFileSync( scss_path + `/../css/${ scss_name }.css`, out_css, {encoding: 'utf8'} );
    	
    	cl( chalk.black.bgGreen('...OK \n') );
    
    };
    Ответ написан
    Комментировать
  • Transition ease?

    dmitryfx
    @dmitryfx
    Это функция сглаживания анимации.
    https://developer.mozilla.org/ru/docs/Web/CSS/CSS_...
    Ответ написан
    Комментировать
  • Отзывчивые таблицы?

    dmitryfx
    @dmitryfx
    Это медиа-запрос обыкновенный. При изменении ширины окна в каждой строке отключаются ячейки по css селектору nth-child. Просто посмотрите в dev. tools, как работает сайт.
    Ответ написан
    Комментировать
  • В какой программе лучше делать макет сайта?

    dmitryfx
    @dmitryfx
    Если нужен не прототип, а именно макет, попробуйте продукты Affinity. Делаю макеты в Designer - это аналог иллюстратора, только работающий по-человечески.
    Ответ написан
    Комментировать