Web Content Proxy Server CSS Prefix Transformation

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

The complexity and resource-intensive nature of cascading style sheets (CSSs) in web pages, requiring large amounts of code and multiple properties for browser compatibility, lead to maintenance challenges and increased resource usage.

Innovation Solution

A web content proxy server identifies the client browser through a user agent header and applies transformation functions to CSS properties with specific prefixes, optimizing CSS code by replacing properties to ensure compatibility and reducing code complexity.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Adaptability or versatility

If multiple CSS properties are included for browser compatibility, then compatibility across different browsers is improved, but code complexity and the amount of code required increase

Engineering Contradiction:
Improvebrowser compatibilityVSAvoidcode complexity
Core Design Contradiction:
Adaptability or versatilityVSDevice complexity

Solution Approach 1:

A server-side intermediary system is introduced that automatically transforms CSS properties based on the client's browser type. The server receives HTTP requests, identifies the browser through user agent headers, and applies appropriate transformation functions to CSS properties with specific prefixes, replacing them with browser-compatible versions before sending the modified web page to the client.

Inventive Principle:
Principle #24Intermediary (Mediator)

Solution Approach 2:

CSS property transformations are performed in advance on the server side before the web page is sent to the client. The server pre-processes the CSS code by applying transformation functions to properties with recognized prefixes, converting them into browser-compatible formats beforehand, so that the client receives optimized CSS without requiring multiple duplicate property definitions.

Inventive Principle:
Principle #10Preliminary action

2Adaptability or versatility

If multiple CSS properties are included for browser compatibility, then compatibility across different browsers is improved, but the amount of resources and time required for communication and rendering increase

Engineering Contradiction:
Improvebrowser compatibilityVSAvoidcommunication and rendering time
Core Design Contradiction:
Adaptability or versatilityVSLoss of time

Solution Approach 1:

The server acts as an intermediary that optimizes CSS properties before transmission. By identifying the client's browser type and applying appropriate transformation functions to CSS properties with specific prefixes, the server reduces the amount of CSS code that needs to be communicated, thereby decreasing communication time and rendering resources required at the client side.

Inventive Principle:
Principle #24Intermediary (Mediator)

3Adaptability or versatility

If implementation details for compatibility are exposed to client computing devices, then browser compatibility is maintained, but security and code optimization are compromised

Engineering Contradiction:
Improvebrowser compatibilityVSAvoidsecurity and code optimization
Core Design Contradiction:
Adaptability or versatilityVSReliability

Solution Approach 1:

The server serves as a secure intermediary that handles all CSS transformation logic on the server side. The client's browser type is identified through user agent headers, and transformation functions are applied server-side based on the detected browser. This approach maintains compatibility while keeping the transformation logic hidden from clients, preventing exposure of implementation details and maintaining code optimization.

Inventive Principle:
Principle #24Intermediary (Mediator)

Data Source

PatentUS10282401B2Methods for processing cascading style sheets and devices thereof
Publication Date: 2019.05.07 USABLENET INC
  • US10282401B2 patent drawing
  • US10282401B2 patent drawing
  • US10282401B2 patent drawing

AI summary

A method, non-transitory computer readable medium, and apparatus that processes cascading style sheets includes receiving a Hypertext Transfer Protocol (HTTP) request for a web page from a client computing device. A type of browser from which the HTTP request originated is identified based on a user agent header included in the HTTP request. At least one cascading style sheet (CSS) associated with the requested web page is obtained. The at least one CSS including a CSS property comprising at least a prefix followed by a name. A determination is made whether the prefix of the CSS property matches an established value. A transformation function for the CSS property is applied, when it is determined that the prefix of the CSS property matches the established value. The modified web page is sent to the requesting client computing device.